Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

gpiolib: acpi: Add quirk to ignore EC wakeups on Dell Venue 10 Pro 5055

Like some other Bay and Cherry Trail SoC based devices the Dell Venue
10 Pro 5055 has an embedded-controller which uses ACPI GPIO events to
report events instead of using the standard ACPI EC interface for this.

The EC interrupt is only used to report battery-level changes and
it keeps doing this while the system is suspended, causing the system
to not stay suspended.

Add an ignore-wake quirk for the GPIO pin used by the EC to fix the
spurious wakeups from suspend.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Acked-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>

authored by

Hans de Goede and committed by
Bartosz Golaszewski
da91ece2 fdc1f5df

+14
+14
drivers/gpio/gpiolib-acpi.c
··· 1447 1447 }, 1448 1448 { 1449 1449 /* 1450 + * The Dell Venue 10 Pro 5055, with Bay Trail SoC + TI PMIC uses an 1451 + * external embedded-controller connected via I2C + an ACPI GPIO 1452 + * event handler on INT33FFC:02 pin 12, causing spurious wakeups. 1453 + */ 1454 + .matches = { 1455 + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), 1456 + DMI_MATCH(DMI_PRODUCT_NAME, "Venue 10 Pro 5055"), 1457 + }, 1458 + .driver_data = &(struct acpi_gpiolib_dmi_quirk) { 1459 + .ignore_wake = "INT33FC:02@12", 1460 + }, 1461 + }, 1462 + { 1463 + /* 1450 1464 * HP X2 10 models with Cherry Trail SoC + TI PMIC use an 1451 1465 * external embedded-controller connected via I2C + an ACPI GPIO 1452 1466 * event handler on INT33FF:01 pin 0, causing spurious wakeups.