moxart_gpio_direction_output() ignored the state passed into it. Fix it.

Signed-off-by: Axel Lin <[email protected]>
---
 drivers/gpio/gpio-moxart.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/gpio/gpio-moxart.c b/drivers/gpio/gpio-moxart.c
index 2af9900..4bd81f9 100644
--- a/drivers/gpio/gpio-moxart.c
+++ b/drivers/gpio/gpio-moxart.c
@@ -33,6 +33,8 @@ struct moxart_gpio_chip {
        void __iomem *base;
 };
 
+static void moxart_gpio_set(struct gpio_chip *chip, unsigned offset, int 
value);
+
 static inline struct moxart_gpio_chip *to_moxart_gpio(struct gpio_chip *chip)
 {
        return container_of(chip, struct moxart_gpio_chip, gpio);
@@ -63,6 +65,7 @@ static int moxart_gpio_direction_output(struct gpio_chip 
*chip,
        struct moxart_gpio_chip *gc = to_moxart_gpio(chip);
        void __iomem *ioaddr = gc->base + GPIO_PIN_DIRECTION;
 
+       moxart_gpio_set(chip, offset, value);
        writel(readl(ioaddr) | BIT(offset), ioaddr);
        return 0;
 }
-- 
1.8.3.2



--
To unsubscribe from this list: send the line "unsubscribe linux-gpio" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to