]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/cbus/cbus.c
use gpio_direction_output (OMAP tree only)
[linux-2.6-omap-h63xx.git] / drivers / cbus / cbus.c
index f373799135b5f2f658da1dc77653b2b6a87fc654..1a184b0aad9efc580f7b7cc5c3eebdd93e513520 100644 (file)
@@ -99,9 +99,11 @@ static u8 cbus_receive_bit(struct cbus_host *host, u32 base)
        return ret;
 }
 
+#define cbus_output(base, gpio, val)   cbus_set_gpio_direction(base, gpio, 0)
+
 #else
 
-#define cbus_set_gpio_direction(base, gpio, is_input) omap_set_gpio_direction(gpio, is_input)
+#define cbus_output(base, gpio, val)   gpio_direction_output(gpio, val)
 #define cbus_set_gpio_dataout(base, gpio, enable) gpio_set_value(gpio, enable)
 #define cbus_get_gpio_datain(base, int, gpio) gpio_get_value(gpio)
 
@@ -156,7 +158,7 @@ static int cbus_transfer(struct cbus_host *host, int dev, int reg, int data)
        cbus_set_gpio_dataout(base, host->sel_gpio, 0);
 
        /* Set the DAT pin to output */
-       cbus_set_gpio_direction(base, host->dat_gpio, 0);
+       cbus_output(base, host->dat_gpio, 1);
 
        /* Send the device address */
        for (i = 3; i > 0; i--)
@@ -260,12 +262,9 @@ int __init cbus_bus_init(void)
        if ((ret = omap_request_gpio(chost->sel_gpio)) < 0)
                goto exit3;
 
-       gpio_set_value(chost->clk_gpio, 0);
-       gpio_set_value(chost->sel_gpio, 1);
-
-       omap_set_gpio_direction(chost->clk_gpio, 0);
+       gpio_direction_output(chost->clk_gpio, 0);
        gpio_direction_input(chost->dat_gpio);
-       omap_set_gpio_direction(chost->sel_gpio, 0);
+       gpio_direction_output(chost->sel_gpio, 1);
 
        gpio_set_value(chost->clk_gpio, 1);
        gpio_set_value(chost->clk_gpio, 0);