diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2012-01-13 18:09:23 -0500 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2012-02-21 09:27:03 -0500 |
commit | a7670151a48cc54fafd8f1b4f04a1495c2f8b6f0 (patch) | |
tree | 9fb32c200209958f2306091f9e3a8e4f0987558b /drivers/pcmcia | |
parent | 65474b457c323fa54aaff146e7caca9c0b37050f (diff) |
PCMCIA: soc_common: remove soc_pcmcia_*_irqs functions
Now that we use gpios and gpio_to_irq() etc to manage the various card
status signals within soc_common, and all socket drivers are converted,
these functions are no longer used. We can now get rid of these helper
functions.
Acked-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'drivers/pcmcia')
-rw-r--r-- | drivers/pcmcia/soc_common.c | 63 | ||||
-rw-r--r-- | drivers/pcmcia/soc_common.h | 10 |
2 files changed, 0 insertions, 73 deletions
diff --git a/drivers/pcmcia/soc_common.c b/drivers/pcmcia/soc_common.c index 09a9a52ad650..e0433f571962 100644 --- a/drivers/pcmcia/soc_common.c +++ b/drivers/pcmcia/soc_common.c | |||
@@ -634,69 +634,6 @@ static struct pccard_operations soc_common_pcmcia_operations = { | |||
634 | }; | 634 | }; |
635 | 635 | ||
636 | 636 | ||
637 | int soc_pcmcia_request_irqs(struct soc_pcmcia_socket *skt, | ||
638 | struct pcmcia_irqs *irqs, int nr) | ||
639 | { | ||
640 | int i, res = 0; | ||
641 | |||
642 | for (i = 0; i < nr; i++) { | ||
643 | if (irqs[i].sock != skt->nr) | ||
644 | continue; | ||
645 | res = request_irq(irqs[i].irq, soc_common_pcmcia_interrupt, | ||
646 | IRQF_DISABLED, irqs[i].str, skt); | ||
647 | if (res) | ||
648 | break; | ||
649 | irq_set_irq_type(irqs[i].irq, IRQ_TYPE_NONE); | ||
650 | } | ||
651 | |||
652 | if (res) { | ||
653 | printk(KERN_ERR "PCMCIA: request for IRQ%d failed (%d)\n", | ||
654 | irqs[i].irq, res); | ||
655 | |||
656 | while (i--) | ||
657 | if (irqs[i].sock == skt->nr) | ||
658 | free_irq(irqs[i].irq, skt); | ||
659 | } | ||
660 | return res; | ||
661 | } | ||
662 | EXPORT_SYMBOL(soc_pcmcia_request_irqs); | ||
663 | |||
664 | void soc_pcmcia_free_irqs(struct soc_pcmcia_socket *skt, | ||
665 | struct pcmcia_irqs *irqs, int nr) | ||
666 | { | ||
667 | int i; | ||
668 | |||
669 | for (i = 0; i < nr; i++) | ||
670 | if (irqs[i].sock == skt->nr) | ||
671 | free_irq(irqs[i].irq, skt); | ||
672 | } | ||
673 | EXPORT_SYMBOL(soc_pcmcia_free_irqs); | ||
674 | |||
675 | void soc_pcmcia_disable_irqs(struct soc_pcmcia_socket *skt, | ||
676 | struct pcmcia_irqs *irqs, int nr) | ||
677 | { | ||
678 | int i; | ||
679 | |||
680 | for (i = 0; i < nr; i++) | ||
681 | if (irqs[i].sock == skt->nr) | ||
682 | irq_set_irq_type(irqs[i].irq, IRQ_TYPE_NONE); | ||
683 | } | ||
684 | EXPORT_SYMBOL(soc_pcmcia_disable_irqs); | ||
685 | |||
686 | void soc_pcmcia_enable_irqs(struct soc_pcmcia_socket *skt, | ||
687 | struct pcmcia_irqs *irqs, int nr) | ||
688 | { | ||
689 | int i; | ||
690 | |||
691 | for (i = 0; i < nr; i++) | ||
692 | if (irqs[i].sock == skt->nr) { | ||
693 | irq_set_irq_type(irqs[i].irq, IRQ_TYPE_EDGE_RISING); | ||
694 | irq_set_irq_type(irqs[i].irq, IRQ_TYPE_EDGE_BOTH); | ||
695 | } | ||
696 | } | ||
697 | EXPORT_SYMBOL(soc_pcmcia_enable_irqs); | ||
698 | |||
699 | |||
700 | static LIST_HEAD(soc_pcmcia_sockets); | 637 | static LIST_HEAD(soc_pcmcia_sockets); |
701 | static DEFINE_MUTEX(soc_pcmcia_sockets_lock); | 638 | static DEFINE_MUTEX(soc_pcmcia_sockets_lock); |
702 | 639 | ||
diff --git a/drivers/pcmcia/soc_common.h b/drivers/pcmcia/soc_common.h index ebdfa6c16308..e6fcbea5b682 100644 --- a/drivers/pcmcia/soc_common.h +++ b/drivers/pcmcia/soc_common.h | |||
@@ -125,22 +125,12 @@ struct pcmcia_low_level { | |||
125 | }; | 125 | }; |
126 | 126 | ||
127 | 127 | ||
128 | struct pcmcia_irqs { | ||
129 | int sock; | ||
130 | int irq; | ||
131 | const char *str; | ||
132 | }; | ||
133 | |||
134 | struct soc_pcmcia_timing { | 128 | struct soc_pcmcia_timing { |
135 | unsigned short io; | 129 | unsigned short io; |
136 | unsigned short mem; | 130 | unsigned short mem; |
137 | unsigned short attr; | 131 | unsigned short attr; |
138 | }; | 132 | }; |
139 | 133 | ||
140 | extern int soc_pcmcia_request_irqs(struct soc_pcmcia_socket *skt, struct pcmcia_irqs *irqs, int nr); | ||
141 | extern void soc_pcmcia_free_irqs(struct soc_pcmcia_socket *skt, struct pcmcia_irqs *irqs, int nr); | ||
142 | extern void soc_pcmcia_disable_irqs(struct soc_pcmcia_socket *skt, struct pcmcia_irqs *irqs, int nr); | ||
143 | extern void soc_pcmcia_enable_irqs(struct soc_pcmcia_socket *skt, struct pcmcia_irqs *irqs, int nr); | ||
144 | extern void soc_common_pcmcia_get_timing(struct soc_pcmcia_socket *, struct soc_pcmcia_timing *); | 134 | extern void soc_common_pcmcia_get_timing(struct soc_pcmcia_socket *, struct soc_pcmcia_timing *); |
145 | 135 | ||
146 | void soc_pcmcia_init_one(struct soc_pcmcia_socket *skt, | 136 | void soc_pcmcia_init_one(struct soc_pcmcia_socket *skt, |