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 <s...@denx.de>
Cc: Kevin Smith <kevin.sm...@elecsyscorp.com>
---
 drivers/gpio/mvebu_gpio.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/gpio/mvebu_gpio.c b/drivers/gpio/mvebu_gpio.c
index 9564ce2..75dc73e 100644
--- a/drivers/gpio/mvebu_gpio.c
+++ b/drivers/gpio/mvebu_gpio.c
@@ -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;
-- 
2.8.1

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to