瀏覽代碼

driver: pcmcia: replace IRQ_GPIO() with gpio_to_irq()

Use common gpio_to_irq() to replace machine dependant macro IRQ_GPIO().

Signed-off-by: Haojian Zhuang <haojian.zhuang@marvell.com>
Haojian Zhuang 13 年之前
父節點
當前提交
951c486f62
共有 2 個文件被更改,包括 12 次插入13 次删除
  1. 8 8
      drivers/pcmcia/pxa2xx_cm_x255.c
  2. 4 5
      drivers/pcmcia/pxa2xx_cm_x270.c

+ 8 - 8
drivers/pcmcia/pxa2xx_cm_x255.c

@@ -16,8 +16,6 @@
 #include <linux/gpio.h>
 #include <linux/gpio.h>
 #include <linux/export.h>
 #include <linux/export.h>
 
 
-#include <asm/mach-types.h>
-
 #include "soc_common.h"
 #include "soc_common.h"
 
 
 #define GPIO_PCMCIA_SKTSEL	(54)
 #define GPIO_PCMCIA_SKTSEL	(54)
@@ -27,15 +25,15 @@
 #define GPIO_PCMCIA_S1_RDYINT	(8)
 #define GPIO_PCMCIA_S1_RDYINT	(8)
 #define GPIO_PCMCIA_RESET	(9)
 #define GPIO_PCMCIA_RESET	(9)
 
 
-#define PCMCIA_S0_CD_VALID	IRQ_GPIO(GPIO_PCMCIA_S0_CD_VALID)
-#define PCMCIA_S1_CD_VALID	IRQ_GPIO(GPIO_PCMCIA_S1_CD_VALID)
-#define PCMCIA_S0_RDYINT	IRQ_GPIO(GPIO_PCMCIA_S0_RDYINT)
-#define PCMCIA_S1_RDYINT	IRQ_GPIO(GPIO_PCMCIA_S1_RDYINT)
+#define PCMCIA_S0_CD_VALID	gpio_to_irq(GPIO_PCMCIA_S0_CD_VALID)
+#define PCMCIA_S1_CD_VALID	gpio_to_irq(GPIO_PCMCIA_S1_CD_VALID)
+#define PCMCIA_S0_RDYINT	gpio_to_irq(GPIO_PCMCIA_S0_RDYINT)
+#define PCMCIA_S1_RDYINT	gpio_to_irq(GPIO_PCMCIA_S1_RDYINT)
 
 
 
 
 static struct pcmcia_irqs irqs[] = {
 static struct pcmcia_irqs irqs[] = {
-	{ 0, PCMCIA_S0_CD_VALID, "PCMCIA0 CD" },
-	{ 1, PCMCIA_S1_CD_VALID, "PCMCIA1 CD" },
+	{ .sock = 0, .str = "PCMCIA0 CD" },
+	{ .sock = 1, .str = "PCMCIA1 CD" },
 };
 };
 
 
 static int cmx255_pcmcia_hw_init(struct soc_pcmcia_socket *skt)
 static int cmx255_pcmcia_hw_init(struct soc_pcmcia_socket *skt)
@@ -46,6 +44,8 @@ static int cmx255_pcmcia_hw_init(struct soc_pcmcia_socket *skt)
 	gpio_direction_output(GPIO_PCMCIA_RESET, 0);
 	gpio_direction_output(GPIO_PCMCIA_RESET, 0);
 
 
 	skt->socket.pci_irq = skt->nr == 0 ? PCMCIA_S0_RDYINT : PCMCIA_S1_RDYINT;
 	skt->socket.pci_irq = skt->nr == 0 ? PCMCIA_S0_RDYINT : PCMCIA_S1_RDYINT;
+	irqs[0].irq = PCMCIA_S0_CD_VALID;
+	irqs[1].irq = PCMCIA_S1_CD_VALID;
 	ret = soc_pcmcia_request_irqs(skt, irqs, ARRAY_SIZE(irqs));
 	ret = soc_pcmcia_request_irqs(skt, irqs, ARRAY_SIZE(irqs));
 	if (!ret)
 	if (!ret)
 		gpio_free(GPIO_PCMCIA_RESET);
 		gpio_free(GPIO_PCMCIA_RESET);

+ 4 - 5
drivers/pcmcia/pxa2xx_cm_x270.c

@@ -16,20 +16,18 @@
 #include <linux/gpio.h>
 #include <linux/gpio.h>
 #include <linux/export.h>
 #include <linux/export.h>
 
 
-#include <asm/mach-types.h>
-
 #include "soc_common.h"
 #include "soc_common.h"
 
 
 #define GPIO_PCMCIA_S0_CD_VALID	(84)
 #define GPIO_PCMCIA_S0_CD_VALID	(84)
 #define GPIO_PCMCIA_S0_RDYINT	(82)
 #define GPIO_PCMCIA_S0_RDYINT	(82)
 #define GPIO_PCMCIA_RESET	(53)
 #define GPIO_PCMCIA_RESET	(53)
 
 
-#define PCMCIA_S0_CD_VALID	IRQ_GPIO(GPIO_PCMCIA_S0_CD_VALID)
-#define PCMCIA_S0_RDYINT	IRQ_GPIO(GPIO_PCMCIA_S0_RDYINT)
+#define PCMCIA_S0_CD_VALID	gpio_to_irq(GPIO_PCMCIA_S0_CD_VALID)
+#define PCMCIA_S0_RDYINT	gpio_to_irq(GPIO_PCMCIA_S0_RDYINT)
 
 
 
 
 static struct pcmcia_irqs irqs[] = {
 static struct pcmcia_irqs irqs[] = {
-	{ 0, PCMCIA_S0_CD_VALID, "PCMCIA0 CD" },
+	{ .sock = 0, .str = "PCMCIA0 CD" },
 };
 };
 
 
 static int cmx270_pcmcia_hw_init(struct soc_pcmcia_socket *skt)
 static int cmx270_pcmcia_hw_init(struct soc_pcmcia_socket *skt)
@@ -40,6 +38,7 @@ static int cmx270_pcmcia_hw_init(struct soc_pcmcia_socket *skt)
 	gpio_direction_output(GPIO_PCMCIA_RESET, 0);
 	gpio_direction_output(GPIO_PCMCIA_RESET, 0);
 
 
 	skt->socket.pci_irq = PCMCIA_S0_RDYINT;
 	skt->socket.pci_irq = PCMCIA_S0_RDYINT;
+	irqs[0].irq = PCMCIA_S0_CD_VALID;
 	ret = soc_pcmcia_request_irqs(skt, irqs, ARRAY_SIZE(irqs));
 	ret = soc_pcmcia_request_irqs(skt, irqs, ARRAY_SIZE(irqs));
 	if (!ret)
 	if (!ret)
 		gpio_free(GPIO_PCMCIA_RESET);
 		gpio_free(GPIO_PCMCIA_RESET);