]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/commitdiff
ARM: OMAP: Switch to gpio_request/free calls (OMAP and mainline)
authorJarkko Nikula <jarkko.nikula@nokia.com>
Tue, 25 Nov 2008 14:12:13 +0000 (16:12 +0200)
committerTony Lindgren <tony@atomide.com>
Tue, 25 Nov 2008 22:24:02 +0000 (14:24 -0800)
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 files changed:
arch/arm/mach-omap1/board-fsample.c
arch/arm/mach-omap1/board-h2.c
arch/arm/mach-omap1/board-h3.c
arch/arm/mach-omap1/board-innovator.c
arch/arm/mach-omap1/board-nokia770.c
arch/arm/mach-omap1/board-palmte.c
arch/arm/mach-omap1/board-palmz71.c
arch/arm/mach-omap1/board-perseus2.c
arch/arm/mach-omap1/board-voiceblue.c
arch/arm/mach-omap1/fpga.c
arch/arm/mach-omap1/leds.c
arch/arm/mach-omap1/serial.c
arch/arm/mach-omap2/board-2430sdp.c
arch/arm/mach-omap2/board-apollon.c
arch/arm/mach-omap2/usb-tusb6010.c
arch/arm/plat-omap/debug-devices.c

index 68da3131f8f81383ce02bc2adf09cdf437f0acbc..30308294e7c1d1ca87e881295789b9f881e0ddfe 100644 (file)
@@ -223,8 +223,9 @@ static struct omap_board_config_kernel fsample_config[] = {
 
 static void __init omap_fsample_init(void)
 {
-       if (!(omap_request_gpio(P2_NAND_RB_GPIO_PIN)))
-               nand_data.dev_ready = nand_dev_ready;
+       if (gpio_request(P2_NAND_RB_GPIO_PIN, "NAND ready") < 0)
+               BUG();
+       nand_data.dev_ready = nand_dev_ready;
 
        omap_cfg_reg(L3_1610_FLASH_CS2B_OE);
        omap_cfg_reg(M8_1610_FLASH_CS2B_WE);
index af44566a105930e038674fee246fa9c580e4938f..d53cefd6bcca4894316ee0c2eeb13b31c36253e9 100644 (file)
@@ -428,7 +428,7 @@ static struct platform_device *h2_devices[] __initdata = {
 
 static void __init h2_init_smc91x(void)
 {
-       if ((omap_request_gpio(0)) < 0) {
+       if (gpio_request(0, "SMC91x irq") < 0) {
                printk("Error requesting gpio 0 for smc91x irq\n");
                return;
        }
@@ -519,8 +519,9 @@ static void __init h2_init(void)
 
        h2_nand_resource.end = h2_nand_resource.start = OMAP_CS2B_PHYS;
        h2_nand_resource.end += SZ_4K - 1;
-       if (!(omap_request_gpio(H2_NAND_RB_GPIO_PIN)))
-               h2_nand_data.dev_ready = h2_nand_dev_ready;
+       if (gpio_request(H2_NAND_RB_GPIO_PIN, "NAND ready") < 0)
+               BUG();
+       gpio_direction_input(H2_NAND_RB_GPIO_PIN);
 
        omap_cfg_reg(L3_1610_FLASH_CS2B_OE);
        omap_cfg_reg(M8_1610_FLASH_CS2B_WE);
@@ -532,10 +533,10 @@ static void __init h2_init(void)
        /* Irda */
 #if defined(CONFIG_OMAP_IR) || defined(CONFIG_OMAP_IR_MODULE)
        omap_writel(omap_readl(FUNC_MUX_CTRL_A) | 7, FUNC_MUX_CTRL_A);
-       if (!(omap_request_gpio(H2_IRDA_FIRSEL_GPIO_PIN))) {
-               gpio_direction_output(H2_IRDA_FIRSEL_GPIO_PIN, 0);
-               h2_irda_data.transceiver_mode = h2_transceiver_mode;
-       }
+       if (gpio_request(H2_IRDA_FIRSEL_GPIO_PIN, "IRDA mode") < 0)
+               BUG();
+       gpio_direction_output(H2_IRDA_FIRSEL_GPIO_PIN, 0);
+       h2_irda_data.transceiver_mode = h2_transceiver_mode;
 #endif
 
        platform_add_devices(h2_devices, ARRAY_SIZE(h2_devices));
index fe9eebf952e013f7745bbcc35e29d62b9851dc83..da29f4ceca0042280a7962baab76ddd3d80ef02d 100644 (file)
@@ -608,8 +608,9 @@ static void __init h3_init(void)
 
        nand_resource.end = nand_resource.start = OMAP_CS2B_PHYS;
        nand_resource.end += SZ_4K - 1;
-       if (!(omap_request_gpio(H3_NAND_RB_GPIO_PIN)))
-               nand_data.dev_ready = nand_dev_ready;
+       if (gpio_request(H3_NAND_RB_GPIO_PIN, "NAND ready") < 0)
+               BUG();
+       nand_data.dev_ready = nand_dev_ready;
 
        /* GPIO10 Func_MUX_CTRL reg bit 29:27, Configure V2 to mode1 as GPIO */
        /* GPIO10 pullup/down register, Enable pullup on GPIO10 */
@@ -635,7 +636,7 @@ static void __init h3_init(void)
 static void __init h3_init_smc91x(void)
 {
        omap_cfg_reg(W15_1710_GPIO40);
-       if (omap_request_gpio(40) < 0) {
+       if (gpio_request(40, "SMC91x irq") < 0) {
                printk("Error requesting gpio 40 for smc91x irq\n");
                return;
        }
index feaf616be5acceb5b6294973e3fcbbbcbaeb336d..f59acef1a3e39f479a1a503ba79702df5ad2830b 100644 (file)
@@ -302,7 +302,7 @@ static void __init innovator_init_smc91x(void)
                           OMAP1510_FPGA_RST);
                udelay(750);
        } else {
-               if ((omap_request_gpio(0)) < 0) {
+               if (gpio_request(0, "SMC91x irq") < 0)
                        printk("Error requesting gpio 0 for smc91x irq\n");
                        return;
                }
index 3e4625eb21e6dda27a7b03576debc294848ea786..7f50fade7f927dcc752cd6d1c7f38a67bd875d32 100644 (file)
@@ -126,7 +126,7 @@ static void mipid_dev_init(void)
 
 static void ads7846_dev_init(void)
 {
-       if (omap_request_gpio(ADS7846_PENDOWN_GPIO) < 0)
+       if (gpio_request(ADS7846_PENDOWN_GPIO, "ADS7846 pendown") < 0)
                printk(KERN_ERR "can't get ads7846 pen down GPIO\n");
 }
 
index 3548bc200da332eb209692f7792df563c2eb2544..cc99031d96cfb20228c95ff1b297fd8e4a4078bf 100644 (file)
@@ -369,14 +369,14 @@ static struct omap_gpio_switch palmte_switches[] __initdata = {
 static void __init palmte_misc_gpio_setup(void)
 {
        /* Set TSC2102 PINTDAV pin as input (used by TSC2102 driver) */
-       if (omap_request_gpio(PALMTE_PINTDAV_GPIO)) {
+       if (gpio_request(PALMTE_PINTDAV_GPIO, "TSC2102 PINTDAV") < 0) {
                printk(KERN_ERR "Could not reserve PINTDAV GPIO!\n");
                return;
        }
        gpio_direction_input(PALMTE_PINTDAV_GPIO);
 
        /* Set USB-or-DC-IN pin as input (unused) */
-       if (omap_request_gpio(PALMTE_USB_OR_DC_GPIO)) {
+       if (gpio_request(PALMTE_USB_OR_DC_GPIO, "USB/DC-IN") < 0) {
                printk(KERN_ERR "Could not reserve cable signal GPIO!\n");
                return;
        }
index b44fde6337d52c736c5b1621d0b49211b3df7441..cc05257eb1cddd7720b182dd7fd52444e8510636 100644 (file)
@@ -315,14 +315,14 @@ palmz71_gpio_setup(int early)
                gpio_direction_output(1, 1);
        } else {
                /* Set MMC/SD host WP pin as input */
-               if (omap_request_gpio(PALMZ71_MMC_WP_GPIO)) {
+               if (gpio_request(PALMZ71_MMC_WP_GPIO, "MMC WP") < 0) {
                        printk(KERN_ERR "Could not reserve WP GPIO!\n");
                        return;
                }
                gpio_direction_input(PALMZ71_MMC_WP_GPIO);
 
                /* Monitor the Power-cable-connected signal */
-               if (omap_request_gpio(PALMZ71_USBDETECT_GPIO)) {
+               if (gpio_request(PALMZ71_USBDETECT_GPIO, "USB detect") < 0) {
                        printk(KERN_ERR
                                "Could not reserve cable signal GPIO!\n");
                        return;
index b8f0077f9c7742395cfd2b627e0d14b1e7f9bad6..3b9f907aa89908569da3e101a471083630787146 100644 (file)
@@ -223,8 +223,9 @@ static struct omap_board_config_kernel perseus2_config[] __initdata = {
 
 static void __init omap_perseus2_init(void)
 {
-       if (!(omap_request_gpio(P2_NAND_RB_GPIO_PIN)))
-               nand_data.dev_ready = nand_dev_ready;
+       if (gpio_request(P2_NAND_RB_GPIO_PIN, "NAND ready") < 0)
+               BUG();
+       nand_data.dev_ready = nand_dev_ready;
 
        omap_cfg_reg(L3_1610_FLASH_CS2B_OE);
        omap_cfg_reg(M8_1610_FLASH_CS2B_WE);
index abf6cb4b6f5f1b16c833211a260dbd8343a2f9bb..c224f3c642353b2705c82c69d91e5537500acad2 100644 (file)
@@ -160,23 +160,23 @@ static void __init voiceblue_init_irq(void)
 static void __init voiceblue_init(void)
 {
        /* Watchdog */
-       omap_request_gpio(0);
+       gpio_request(0, "Watchdog");
        /* smc91x reset */
-       omap_request_gpio(7);
+       gpio_request(7, "SMC91x reset");
        gpio_direction_output(7, 1);
        udelay(2);      /* wait at least 100ns */
        gpio_set_value(7, 0);
        mdelay(50);     /* 50ms until PHY ready */
        /* smc91x interrupt pin */
-       omap_request_gpio(8);
+       gpio_request(8, "SMC91x irq");
        /* 16C554 reset*/
-       omap_request_gpio(6);
+       gpio_request(6, "16C554 reset");
        gpio_direction_output(6, 0);
        /* 16C554 interrupt pins */
-       omap_request_gpio(12);
-       omap_request_gpio(13);
-       omap_request_gpio(14);
-       omap_request_gpio(15);
+       gpio_request(12, "16C554 irq");
+       gpio_request(13, "16C554 irq");
+       gpio_request(14, "16C554 irq");
+       gpio_request(15, "16C554 irq");
        set_irq_type(gpio_to_irq(12), IRQ_TYPE_EDGE_RISING);
        set_irq_type(gpio_to_irq(13), IRQ_TYPE_EDGE_RISING);
        set_irq_type(gpio_to_irq(14), IRQ_TYPE_EDGE_RISING);
index 55748ec26e197e9345a4fcedd1b83d8f39223354..4f2b8a7adb19a3ff8fb1673e21b3c3e9752de567 100644 (file)
@@ -177,7 +177,7 @@ void omap1510_fpga_init_irq(void)
         * NOTE: For general GPIO/MPUIO access and interrupts, please see
         * gpio.[ch]
         */
-       omap_request_gpio(13);
+       gpio_request(13, "FPGA irq");
        gpio_direction_input(13);
        set_irq_type(gpio_to_irq(13), IRQ_TYPE_EDGE_RISING);
        set_irq_chained_handler(OMAP1510_INT_FPGA, innovator_fpga_IRQ_demux);
index 540434e38f22a5f7e858717f32ee596373cee49e..8cbf2562dcaa79bf53d019d5bd59b3a9b257fe69 100644 (file)
@@ -47,13 +47,13 @@ omap_leds_init(void)
                 * that's a different kind of LED (just one color at a time).
                 */
                omap_cfg_reg(P18_1610_GPIO3);
-               if (omap_request_gpio(3) == 0)
+               if (gpio_request(3, "LED red") == 0)
                        gpio_direction_output(3, 1);
                else
                        printk(KERN_WARNING "LED: can't get GPIO3/red?\n");
 
                omap_cfg_reg(MPUIO4);
-               if (omap_request_gpio(OMAP_MPUIO(4)) == 0)
+               if (gpio_request(OMAP_MPUIO(4), "LED green") == 0)
                        gpio_direction_output(OMAP_MPUIO(4), 1);
                else
                        printk(KERN_WARNING "LED: can't get MPUIO4/green?\n");
index b63da3f70c3f10b236fb8b3a9ee76d76b234d70a..0002084e0655341f508a857b05f2746306685091 100644 (file)
@@ -244,7 +244,7 @@ static void __init omap_serial_set_port_wakeup(int gpio_nr)
 {
        int ret;
 
-       ret = omap_request_gpio(gpio_nr);
+       ret = gpio_request(gpio_nr, "UART wake");
        if (ret < 0) {
                printk(KERN_ERR "Could not request UART wake GPIO: %i\n",
                       gpio_nr);
@@ -254,7 +254,7 @@ static void __init omap_serial_set_port_wakeup(int gpio_nr)
        ret = request_irq(gpio_to_irq(gpio_nr), &omap_serial_wake_interrupt,
                          IRQF_TRIGGER_RISING, "serial wakeup", NULL);
        if (ret) {
-               omap_free_gpio(gpio_nr);
+               gpio_free(gpio_nr);
                printk(KERN_ERR "No interrupt for UART wake GPIO: %i\n",
                       gpio_nr);
                return;
index 58854de994142793b0295bdfc3baad2a0f19a4d0..d0de14272d20ec97de3164d0e56dbcd0617ea7a4 100644 (file)
@@ -310,7 +310,7 @@ static inline void __init sdp2430_init_smc91x(void)
        sdp2430_smc91x_resources[0].end = cs_mem_base + 0x30f;
        udelay(100);
 
-       if (omap_request_gpio(OMAP24XX_ETHR_GPIO_IRQ) < 0) {
+       if (gpio_request(OMAP24XX_ETHR_GPIO_IRQ, "SMC91x irq") < 0) {
                printk(KERN_ERR "Failed to request GPIO%d for smc91x IRQ\n",
                        OMAP24XX_ETHR_GPIO_IRQ);
                gpmc_cs_free(eth_cs);
index fcf2ab01a9b6bb9eab57326b351ee73e27533cc1..755f93b0a56873fac7f7513846eba0748d1d4b2b 100644 (file)
@@ -308,7 +308,7 @@ static inline void __init apollon_init_smc91x(void)
        udelay(100);
 
        omap_cfg_reg(W4__24XX_GPIO74);
-       if (omap_request_gpio(APOLLON_ETHR_GPIO_IRQ) < 0) {
+       if (gpio_request(APOLLON_ETHR_GPIO_IRQ, "SMC91x irq") < 0) {
                printk(KERN_ERR "Failed to request GPIO%d for smc91x IRQ\n",
                        APOLLON_ETHR_GPIO_IRQ);
                gpmc_cs_free(eth_cs);
@@ -391,7 +391,7 @@ static void __init apollon_usb_init(void)
        /* USB device */
        /* DEVICE_SUSPEND */
        omap_cfg_reg(P21_242X_GPIO12);
-       omap_request_gpio(12);
+       gpio_request(12, "USB suspend");
        gpio_direction_output(12, 0);
 }
 
index d59855cbba9803649f18866d2fa27a763c6bbbfe..32b7c8595bb2845af5a741e4a694b5e098591611 100644 (file)
 #include <linux/errno.h>
 #include <linux/delay.h>
 #include <linux/platform_device.h>
+#include <linux/gpio.h>
 
 #include <linux/usb/musb.h>
 
 #include <mach/gpmc.h>
-#include <mach/gpio.h>
 #include <mach/mux.h>
 
 
@@ -290,7 +290,7 @@ tusb6010_setup_interface(struct musb_hdrc_platform_data *data,
                        );
 
        /* IRQ */
-       status = omap_request_gpio(irq);
+       status = gpio_request(irq, "TUSB6010 irq");
        if (status < 0) {
                printk(error, 3, status);
                return status;
index 7d9c87c6574fa7d4b2e982333e520c5d1367897f..f6684832ca8f6cb500812d8d72f9575aa517ea97 100644 (file)
@@ -72,7 +72,7 @@ int __init debug_card_init(u32 addr, unsigned gpio)
        smc91x_resources[1].start = gpio_to_irq(gpio);
        smc91x_resources[1].end   = gpio_to_irq(gpio);
 
-       status = omap_request_gpio(gpio);
+       status = gpio_request(gpio, "SMC91x irq");
        if (status < 0) {
                printk(KERN_ERR "GPIO%d unavailable for smc91x IRQ\n", gpio);
                return status;