From: John Crispin Date: Thu, 26 Nov 2015 10:00:09 +0000 (+0100) Subject: pinctrl/lantiq: Fix GPIO Setup of GPIO Port3 X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=57b588c950b7e04e0f22393ad439299ba4fda9c3;p=GitHub%2Fmoto-9609%2Fandroid_kernel_motorola_exynos9610.git pinctrl/lantiq: Fix GPIO Setup of GPIO Port3 Some special handling of GPIO Port 3 is needed because of some hardware thingofabob. Signed-off-by: John Crispin Signed-off-by: Martin Schiller Signed-off-by: Linus Walleij --- diff --git a/drivers/pinctrl/pinctrl-xway.c b/drivers/pinctrl/pinctrl-xway.c index a064962ece8b..b78baaa5ee4b 100644 --- a/drivers/pinctrl/pinctrl-xway.c +++ b/drivers/pinctrl/pinctrl-xway.c @@ -1563,6 +1563,10 @@ static int xway_gpio_dir_out(struct gpio_chip *chip, unsigned int pin, int val) { struct ltq_pinmux_info *info = dev_get_drvdata(chip->dev); + if (PORT(pin) == PORT3) + gpio_setbit(info->membase[0], GPIO3_OD, PORT_PIN(pin)); + else + gpio_setbit(info->membase[0], GPIO_OD(pin), PORT_PIN(pin)); gpio_setbit(info->membase[0], GPIO_DIR(pin), PORT_PIN(pin)); xway_gpio_set(chip, pin, val);