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 <blogic@openwrt.org>
Signed-off-by: Martin Schiller <mschiller@tdt.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
This commit is contained in:
John Crispin 2015-11-26 11:00:09 +01:00 committed by Linus Walleij
parent be14811c03
commit 57b588c950

View File

@ -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); 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)); gpio_setbit(info->membase[0], GPIO_DIR(pin), PORT_PIN(pin));
xway_gpio_set(chip, pin, val); xway_gpio_set(chip, pin, val);