]> git.sur5r.net Git - u-boot/commitdiff
gpio: mvebu_gpio: Add missing out value set to gpio_direction_output()
authorStefan Roese <sr@denx.de>
Thu, 7 Apr 2016 05:41:00 +0000 (07:41 +0200)
committerStefan Roese <sr@denx.de>
Tue, 12 Apr 2016 09:13:33 +0000 (11:13 +0200)
This patch adds the missing configuration of the output value to the
gpio_direction_output() function. Without this, calling
gpio_direction_output() does not set the out-value at all and only
configures the gpio as output.

Signed-off-by: Stefan Roese <sr@denx.de>
Cc: Kevin Smith <kevin.smith@elecsyscorp.com>
Reviewed-by: Kevin Smith <kevin.smith@elecsyscorp.com>
drivers/gpio/mvebu_gpio.c

index 9564ce2b13ea9f313f006d5e6a5448fad36bbd76..75dc73e5860b61be65e90ba165526e30ac6b009d 100644 (file)
@@ -43,6 +43,10 @@ static int mvebu_gpio_direction_output(struct udevice *dev, unsigned gpio,
        struct mvebu_gpio_priv *priv = dev_get_priv(dev);
        struct mvebu_gpio_regs *regs = priv->regs;
 
+       if (value)
+               setbits_le32(&regs->data_out, BIT(gpio));
+       else
+               clrbits_le32(&regs->data_out, BIT(gpio));
        clrbits_le32(&regs->io_conf, BIT(gpio));
 
        return 0;