Message ID | 20210401162740.4602-1-hdegoede@redhat.com |
---|---|
State | Accepted |
Commit | da91ece226729c76f60708efc275ebd4716ad089 |
Headers | show |
Series | gpiolib: acpi: Add quirk to ignore EC wakeups on Dell Venue 10 Pro 5055 | expand |
On Thu, Apr 01, 2021 at 06:27:40PM +0200, Hans de Goede wrote: > 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. Fine by me, Acked-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> I have sent my PR to Bart few days ago and today he applied it. So, since I'm not expecting much going on in this cycle, I assume it's okay to go directly to Bart's tree. > Signed-off-by: Hans de Goede <hdegoede@redhat.com> > --- > drivers/gpio/gpiolib-acpi.c | 14 ++++++++++++++ > 1 file changed, 14 insertions(+) > > diff --git a/drivers/gpio/gpiolib-acpi.c b/drivers/gpio/gpiolib-acpi.c > index 1aacd2a5a1fd..174839f3772f 100644 > --- a/drivers/gpio/gpiolib-acpi.c > +++ b/drivers/gpio/gpiolib-acpi.c > @@ -1438,6 +1438,20 @@ static const struct dmi_system_id gpiolib_acpi_quirks[] __initconst = { > .no_edge_events_on_boot = true, > }, > }, > + { > + /* > + * The Dell Venue 10 Pro 5055, with Bay Trail SoC + TI PMIC uses an > + * external embedded-controller connected via I2C + an ACPI GPIO > + * event handler on INT33FFC:02 pin 12, causing spurious wakeups. > + */ > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), > + DMI_MATCH(DMI_PRODUCT_NAME, "Venue 10 Pro 5055"), > + }, > + .driver_data = &(struct acpi_gpiolib_dmi_quirk) { > + .ignore_wake = "INT33FC:02@12", > + }, > + }, > { > /* > * HP X2 10 models with Cherry Trail SoC + TI PMIC use an > -- > 2.30.2 >
On Thu, Apr 01, 2021 at 06:27:40PM +0200, Hans de Goede wrote: > 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. Pushed to my review and testing queue, thanks! > Signed-off-by: Hans de Goede <hdegoede@redhat.com> > --- > drivers/gpio/gpiolib-acpi.c | 14 ++++++++++++++ > 1 file changed, 14 insertions(+) > > diff --git a/drivers/gpio/gpiolib-acpi.c b/drivers/gpio/gpiolib-acpi.c > index 1aacd2a5a1fd..174839f3772f 100644 > --- a/drivers/gpio/gpiolib-acpi.c > +++ b/drivers/gpio/gpiolib-acpi.c > @@ -1438,6 +1438,20 @@ static const struct dmi_system_id gpiolib_acpi_quirks[] __initconst = { > .no_edge_events_on_boot = true, > }, > }, > + { > + /* > + * The Dell Venue 10 Pro 5055, with Bay Trail SoC + TI PMIC uses an > + * external embedded-controller connected via I2C + an ACPI GPIO > + * event handler on INT33FFC:02 pin 12, causing spurious wakeups. > + */ > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), > + DMI_MATCH(DMI_PRODUCT_NAME, "Venue 10 Pro 5055"), > + }, > + .driver_data = &(struct acpi_gpiolib_dmi_quirk) { > + .ignore_wake = "INT33FC:02@12", > + }, > + }, > { > /* > * HP X2 10 models with Cherry Trail SoC + TI PMIC use an > -- > 2.30.2 > -- With Best Regards, Andy Shevchenko
diff --git a/drivers/gpio/gpiolib-acpi.c b/drivers/gpio/gpiolib-acpi.c index 1aacd2a5a1fd..174839f3772f 100644 --- a/drivers/gpio/gpiolib-acpi.c +++ b/drivers/gpio/gpiolib-acpi.c @@ -1438,6 +1438,20 @@ static const struct dmi_system_id gpiolib_acpi_quirks[] __initconst = { .no_edge_events_on_boot = true, }, }, + { + /* + * The Dell Venue 10 Pro 5055, with Bay Trail SoC + TI PMIC uses an + * external embedded-controller connected via I2C + an ACPI GPIO + * event handler on INT33FFC:02 pin 12, causing spurious wakeups. + */ + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), + DMI_MATCH(DMI_PRODUCT_NAME, "Venue 10 Pro 5055"), + }, + .driver_data = &(struct acpi_gpiolib_dmi_quirk) { + .ignore_wake = "INT33FC:02@12", + }, + }, { /* * HP X2 10 models with Cherry Trail SoC + TI PMIC use an
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> --- drivers/gpio/gpiolib-acpi.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+)