Commit 1bd43d00 authored by Hans de Goede's avatar Hans de Goede Committed by Andy Shevchenko

platform/x86: intel_int0002_vgpio: Fix wakeups not working on Cherry Trail

Commit 871f1f2b ("platform/x86: intel_int0002_vgpio: Only implement
irq_set_wake on Bay Trail") removed the irq_set_wake method from the
struct irq_chip used on Cherry Trail, but it did not set
IRQCHIP_SKIP_SET_WAKE causing  kernel/irq/manage.c: set_irq_wake_real()
to return -ENXIO.

This causes the kernel to no longer see PME events reported through the
INT0002 device as wakeup events. Which e.g. breaks wakeup by the (USB)
keyboard on many Cherry Trail 2-in-1 devices.

Cc: stable@vger.kernel.org
Fixes: 871f1f2b ("platform/x86: intel_int0002_vgpio: Only implement irq_set_wake on Bay Trail")
Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
Signed-off-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
parent 09e7f280
...@@ -144,6 +144,7 @@ static struct irq_chip int0002_cht_irqchip = { ...@@ -144,6 +144,7 @@ static struct irq_chip int0002_cht_irqchip = {
* No set_wake, on CHT the IRQ is typically shared with the ACPI SCI * No set_wake, on CHT the IRQ is typically shared with the ACPI SCI
* and we don't want to mess with the ACPI SCI irq settings. * and we don't want to mess with the ACPI SCI irq settings.
*/ */
.flags = IRQCHIP_SKIP_SET_WAKE,
}; };
static const struct x86_cpu_id int0002_cpu_ids[] = { static const struct x86_cpu_id int0002_cpu_ids[] = {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment