]> git.ipfire.org Git - people/ms/u-boot.git/blobdiff - drivers/gpio/adi_gpio2.c
gpio: mvebu_gpio: Add missing out value set to gpio_direction_output()
[people/ms/u-boot.git] / drivers / gpio / adi_gpio2.c
index 7a034eba1222880db32f038ecf77881ae48292d9..88cd65b87fcfa202d941d66c531da7e62426410e 100644 (file)
 #include <common.h>
 #include <asm/errno.h>
 #include <asm/gpio.h>
-#include <asm/portmux.h>
-
-static struct gpio_port_t * const gpio_array[] = {
-       (struct gpio_port_t *)PORTA_FER,
-       (struct gpio_port_t *)PORTB_FER,
-       (struct gpio_port_t *)PORTC_FER,
-       (struct gpio_port_t *)PORTD_FER,
-       (struct gpio_port_t *)PORTE_FER,
-       (struct gpio_port_t *)PORTF_FER,
-       (struct gpio_port_t *)PORTG_FER,
-#if defined(CONFIG_BF54x)
-       (struct gpio_port_t *)PORTH_FER,
-       (struct gpio_port_t *)PORTI_FER,
-       (struct gpio_port_t *)PORTJ_FER,
-#endif
-};
 
 #define RESOURCE_LABEL_SIZE    16
 
@@ -98,7 +82,6 @@ static void port_setup(unsigned gpio, unsigned short usage)
        else
                gpio_array[gpio_bank(gpio)]->port_fer_set = gpio_bit(gpio);
 #endif
-       SSYNC();
 }
 
 inline void portmux_setup(unsigned short per)
@@ -352,8 +335,8 @@ void special_gpio_free(unsigned gpio)
                return;
        }
 
-       reserve(special_gpio, gpio);
-       reserve(peri, gpio);
+       unreserve(special_gpio, gpio);
+       unreserve(peri, gpio);
        set_label(gpio, "free");
 }
 #endif