6989ea4881
The firmware on some systems may configure GPIO pins to be an interrupt source in so called "direct IRQ" mode. In such cases the GPIO controller driver has no idea if those pins are being used or not. At the same time, there is a known bug in the firmwares that don't restore the pin settings correctly after suspend, i.e. by an unknown reason the Rx value becomes inverted. Hence, let's save and restore the pins that are configured as GPIOs in the input mode with GPIROUTIOXAPIC bit set. Cc: stable@vger.kernel.org Reported-and-tested-by: Dale Smith <dalepsmith@gmail.com> Reported-and-tested-by: John Harris <jmharris@gmail.com> BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=214749 Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com> Link: https://lore.kernel.org/r/20221124222926.72326-1-andriy.shevchenko@linux.intel.com Signed-off-by: Linus Walleij <linus.walleij@linaro.org> |
||
---|---|---|
.. | ||
Kconfig | ||
Makefile | ||
pinctrl-alderlake.c | ||
pinctrl-baytrail.c | ||
pinctrl-broxton.c | ||
pinctrl-cannonlake.c | ||
pinctrl-cedarfork.c | ||
pinctrl-cherryview.c | ||
pinctrl-denverton.c | ||
pinctrl-elkhartlake.c | ||
pinctrl-emmitsburg.c | ||
pinctrl-geminilake.c | ||
pinctrl-icelake.c | ||
pinctrl-intel.c | ||
pinctrl-intel.h | ||
pinctrl-jasperlake.c | ||
pinctrl-lakefield.c | ||
pinctrl-lewisburg.c | ||
pinctrl-lynxpoint.c | ||
pinctrl-merrifield.c | ||
pinctrl-meteorlake.c | ||
pinctrl-sunrisepoint.c | ||
pinctrl-tigerlake.c |