Message ID | 20230322121547.14997-1-wse@tuxedocomputers.com |
---|---|
State | Accepted |
Commit | 782eea0c89f7d071d6b56ecfa1b8b0c81164b9be |
Headers | show |
Series | gpiolib: acpi: Add a ignore wakeup quirk for Clevo NL5xNU | expand |
On Wed, Mar 22, 2023 at 1:16 PM Werner Sembach <wse@tuxedocomputers.com> wrote: > > commit 1796f808e4bb ("HID: i2c-hid: acpi: Stop setting wakeup_capable") > changed the policy such that I2C touchpads may be able to wake up the > system by default if the system is configured as such. > > However on Clevo NL5xNU there is a mistake in the ACPI tables that the > TP_ATTN# signal connected to GPIO 9 is configured as ActiveLow and level > triggered but connected to a pull up. As soon as the system suspends the > touchpad loses power and then the system wakes up. > > To avoid this problem, introduce a quirk for this model that will prevent > the wakeup capability for being set for GPIO 9. > > This patch is analoge to a very similar patch for NL5xRU, just the DMI > string changed. > > Signed-off-by: Werner Sembach <wse@tuxedocomputers.com> > Cc: stable@vger.kernel.org > --- > drivers/gpio/gpiolib-acpi.c | 13 +++++++++++++ > 1 file changed, 13 insertions(+) > > diff --git a/drivers/gpio/gpiolib-acpi.c b/drivers/gpio/gpiolib-acpi.c > index 34ff048e70d0e..055013f959b25 100644 > --- a/drivers/gpio/gpiolib-acpi.c > +++ b/drivers/gpio/gpiolib-acpi.c > @@ -1624,6 +1624,19 @@ static const struct dmi_system_id gpiolib_acpi_quirks[] __initconst = { > .ignore_interrupt = "AMDI0030:00@18", > }, > }, > + { > + /* > + * Spurious wakeups from TP_ATTN# pin > + * Found in BIOS 1.7.8 > + * https://gitlab.freedesktop.org/drm/amd/-/issues/1722#note_1720627 > + */ > + .matches = { > + DMI_MATCH(DMI_BOARD_NAME, "NL5xNU"), > + }, > + .driver_data = &(struct acpi_gpiolib_dmi_quirk) { > + .ignore_wake = "ELAN0415:00@9", > + }, > + }, > { > /* > * Spurious wakeups from TP_ATTN# pin > -- > 2.34.1 > Queued for fixes. Bart
diff --git a/drivers/gpio/gpiolib-acpi.c b/drivers/gpio/gpiolib-acpi.c index 34ff048e70d0e..055013f959b25 100644 --- a/drivers/gpio/gpiolib-acpi.c +++ b/drivers/gpio/gpiolib-acpi.c @@ -1624,6 +1624,19 @@ static const struct dmi_system_id gpiolib_acpi_quirks[] __initconst = { .ignore_interrupt = "AMDI0030:00@18", }, }, + { + /* + * Spurious wakeups from TP_ATTN# pin + * Found in BIOS 1.7.8 + * https://gitlab.freedesktop.org/drm/amd/-/issues/1722#note_1720627 + */ + .matches = { + DMI_MATCH(DMI_BOARD_NAME, "NL5xNU"), + }, + .driver_data = &(struct acpi_gpiolib_dmi_quirk) { + .ignore_wake = "ELAN0415:00@9", + }, + }, { /* * Spurious wakeups from TP_ATTN# pin
commit 1796f808e4bb ("HID: i2c-hid: acpi: Stop setting wakeup_capable") changed the policy such that I2C touchpads may be able to wake up the system by default if the system is configured as such. However on Clevo NL5xNU there is a mistake in the ACPI tables that the TP_ATTN# signal connected to GPIO 9 is configured as ActiveLow and level triggered but connected to a pull up. As soon as the system suspends the touchpad loses power and then the system wakes up. To avoid this problem, introduce a quirk for this model that will prevent the wakeup capability for being set for GPIO 9. This patch is analoge to a very similar patch for NL5xRU, just the DMI string changed. Signed-off-by: Werner Sembach <wse@tuxedocomputers.com> Cc: stable@vger.kernel.org --- drivers/gpio/gpiolib-acpi.c | 13 +++++++++++++ 1 file changed, 13 insertions(+)