Blackfin arch: unify port_setup() to reduce arch differences
authorMike Frysinger <vapier.adi@gmail.com>
Tue, 28 Oct 2008 07:53:37 +0000 (15:53 +0800)
committerBryan Wu <cooloney@kernel.org>
Tue, 28 Oct 2008 07:53:37 +0000 (15:53 +0800)
Signed-off-by: Mike Frysinger <vapier.adi@gmail.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
arch/blackfin/kernel/bfin_gpio.c

index 8d12853a64fdfb6f3454bbbdf5cd0442d2ab4aa9..96090268e00744998179567ef5d001a1b5cd046f 100644 (file)
@@ -261,29 +261,25 @@ static int cmp_label(unsigned short ident, const char *label)
                return -EINVAL;
 }
 
-#if defined(BF527_FAMILY) || defined(BF537_FAMILY) || defined(BF518_FAMILY)
 static void port_setup(unsigned gpio, unsigned short usage)
 {
-       if (!check_gpio(gpio)) {
-               if (usage == GPIO_USAGE)
-                       *port_fer[gpio_bank(gpio)] &= ~gpio_bit(gpio);
-               else
-                       *port_fer[gpio_bank(gpio)] |= gpio_bit(gpio);
-               SSYNC();
-       }
-}
+       if (check_gpio(gpio))
+               return;
+
+#if defined(BF527_FAMILY) || defined(BF537_FAMILY) || defined(BF518_FAMILY)
+       if (usage == GPIO_USAGE)
+               *port_fer[gpio_bank(gpio)] &= ~gpio_bit(gpio);
+       else
+               *port_fer[gpio_bank(gpio)] |= gpio_bit(gpio);
+       SSYNC();
 #elif defined(BF548_FAMILY)
-static void port_setup(unsigned gpio, unsigned short usage)
-{
        if (usage == GPIO_USAGE)
                gpio_array[gpio_bank(gpio)]->port_fer &= ~gpio_bit(gpio);
        else
                gpio_array[gpio_bank(gpio)]->port_fer |= gpio_bit(gpio);
        SSYNC();
-}
-#else
-# define port_setup(...)  do { } while (0)
 #endif
+}
 
 #ifdef BF537_FAMILY
 static struct {