]> git.baikalelectronics.ru Git - kernel.git/commit
pinctrl: intel: Actually disable Tx and Rx buffers on GPIO request
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Tue, 8 Dec 2020 18:24:03 +0000 (20:24 +0200)
committerLinus Walleij <linus.walleij@linaro.org>
Wed, 9 Dec 2020 08:08:18 +0000 (09:08 +0100)
commit9c8f0d6aa9af94452cce22e0c72978c3c1ee8970
treef934bdc9f221fd2faa3a8b0aadd09a545cdbb5ce
parent2b52c95e57e5dee759bb2015c3a235ef826f3d62
pinctrl: intel: Actually disable Tx and Rx buffers on GPIO request

Mistakenly the buffers (input and output) become enabled together for a short
period of time during GPIO request. This is problematic, because instead of
initial motive to disable them in the commit 60b8c2931281
("pinctrl: intel: Disable input and output buffer when switching to GPIO"),
the driven value on the pin, which might be used as an IRQ line, brings
firmwares of some touch pads to an awkward state that needs a full power off
to recover. Fix this, as stated in the culprit commit, by disabling the buffers.

Fixes: 60b8c2931281 ("pinctrl: intel: Disable input and output buffer when switching to GPIO")
BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=210497
Reported-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Tested-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Tested-by: Kai-Heng Feng <kai.heng.feng@canonical.com>
Link: https://lore.kernel.org/r/20201208182403.40435-1-andriy.shevchenko@linux.intel.com
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
drivers/pinctrl/intel/pinctrl-intel.c