Public bug reported: On ASUS TUF A16 it is reported that the ITE5570 ACPI device connected to GPIO 7 is causing an interrupt storm. This issue doesn't happen on Windows.
Comparing the GPIO register configuration between Windows and Linux bit 20 has been configured as a pull up on Windows, but not on Linux. Checking GPIO declaration from the firmware it is clear it *should* have been a pull up on Linux as well. ``` GpioInt (Level, ActiveLow, Exclusive, PullUp, 0x0000, "\\_SB.GPIO", 0x00, ResourceConsumer, ,) { // Pin list 0x0007 } ``` On Linux amd_gpio_set_config() is currently only used for programming the debounce. Actually the GPIO core calls it with all the arguments that are supported by a GPIO, pinctrl-amd just responds `-ENOTSUPP`. To solve this issue expand amd_gpio_set_config() to support the other arguments amd_pinconf_set() supports, namely `PIN_CONFIG_BIAS_PULL_DOWN`, `PIN_CONFIG_BIAS_PULL_UP`, and `PIN_CONFIG_DRIVE_STRENGTH`. Upstream bug in https://bugzilla.kernel.org/show_bug.cgi?id=217336 Related fixes are: (all in linux-next) * commit 968ab9261627 ("pinctrl: amd: Detect internal GPIO0 debounce handling") * commit 0d5ace1a07f7 ("pinctrl: amd: Only use special debounce behavior for GPIO 0") * commit 635a750d958e ("pinctrl: amd: Use amd_pinconf_set() for all config options") * commit 3f62312d04d4 ("pinctrl: amd: Drop pull up select configuration") * commit 283c5ce7da0a ("pinctrl: amd: Unify debounce handling into amd_pinconf_set()") ** Affects: linux (Ubuntu) Importance: Undecided Status: New -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/2027816 Title: interrupt storm on GPIO controller on AMD platforms Status in linux package in Ubuntu: New Bug description: On ASUS TUF A16 it is reported that the ITE5570 ACPI device connected to GPIO 7 is causing an interrupt storm. This issue doesn't happen on Windows. Comparing the GPIO register configuration between Windows and Linux bit 20 has been configured as a pull up on Windows, but not on Linux. Checking GPIO declaration from the firmware it is clear it *should* have been a pull up on Linux as well. ``` GpioInt (Level, ActiveLow, Exclusive, PullUp, 0x0000, "\\_SB.GPIO", 0x00, ResourceConsumer, ,) { // Pin list 0x0007 } ``` On Linux amd_gpio_set_config() is currently only used for programming the debounce. Actually the GPIO core calls it with all the arguments that are supported by a GPIO, pinctrl-amd just responds `-ENOTSUPP`. To solve this issue expand amd_gpio_set_config() to support the other arguments amd_pinconf_set() supports, namely `PIN_CONFIG_BIAS_PULL_DOWN`, `PIN_CONFIG_BIAS_PULL_UP`, and `PIN_CONFIG_DRIVE_STRENGTH`. Upstream bug in https://bugzilla.kernel.org/show_bug.cgi?id=217336 Related fixes are: (all in linux-next) * commit 968ab9261627 ("pinctrl: amd: Detect internal GPIO0 debounce handling") * commit 0d5ace1a07f7 ("pinctrl: amd: Only use special debounce behavior for GPIO 0") * commit 635a750d958e ("pinctrl: amd: Use amd_pinconf_set() for all config options") * commit 3f62312d04d4 ("pinctrl: amd: Drop pull up select configuration") * commit 283c5ce7da0a ("pinctrl: amd: Unify debounce handling into amd_pinconf_set()") To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2027816/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp