Commit d68b42e3 authored by Andy Shevchenko's avatar Andy Shevchenko Committed by Linus Walleij

pinctrl: intel: Read back TX buffer state

In the same way as it's done in pinctrl-cherryview.c we would provide
a readback TX buffer state.

Fixes: 17fab473 ("pinctrl: intel: Set pin direction properly")
Reported-by: default avatar"Bourque, Francis" <francis.bourque@intel.com>
Signed-off-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-by: default avatarMika Westerberg <mika.westerberg@linux.intel.com>
Tested-by: default avatar"Bourque, Francis" <francis.bourque@intel.com>
Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
parent 12b8f018
...@@ -751,12 +751,17 @@ static int intel_gpio_get(struct gpio_chip *chip, unsigned offset) ...@@ -751,12 +751,17 @@ static int intel_gpio_get(struct gpio_chip *chip, unsigned offset)
{ {
struct intel_pinctrl *pctrl = gpiochip_get_data(chip); struct intel_pinctrl *pctrl = gpiochip_get_data(chip);
void __iomem *reg; void __iomem *reg;
u32 padcfg0;
reg = intel_get_padcfg(pctrl, offset, PADCFG0); reg = intel_get_padcfg(pctrl, offset, PADCFG0);
if (!reg) if (!reg)
return -EINVAL; return -EINVAL;
return !!(readl(reg) & PADCFG0_GPIORXSTATE); padcfg0 = readl(reg);
if (!(padcfg0 & PADCFG0_GPIOTXDIS))
return !!(padcfg0 & PADCFG0_GPIOTXSTATE);
return !!(padcfg0 & PADCFG0_GPIORXSTATE);
} }
static void intel_gpio_set(struct gpio_chip *chip, unsigned offset, int value) static void intel_gpio_set(struct gpio_chip *chip, unsigned offset, int value)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment