]> git.proxmox.com Git - mirror_ubuntu-eoan-kernel.git/commit
PCI: irq: Introduce rearm_wake_irq()
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>
Mon, 13 Jan 2020 09:40:00 +0000 (10:40 +0100)
committerKleber Sacilotto de Souza <kleber.souza@canonical.com>
Fri, 14 Feb 2020 10:57:30 +0000 (11:57 +0100)
commit25f34480c72acc34817dd30e0b8e45ad3509ed10
treebf137144ef9dc844001b5c1155eb0ccf3613d519
parent2972ccaa2a1c6bea3c0e58d737c1398b06b1cdb6
PCI: irq: Introduce rearm_wake_irq()

BugLink: https://bugs.launchpad.net/bugs/1859407
Introduce a new function, rearm_wake_irq(), allowing a wakeup IRQ
to be armed for systen wakeup detection again without running any
action handlers associated with it after it has been armed for
wakeup detection and triggered.

That is useful for IRQs, like ACPI SCI, that may deliver wakeup
as well as non-wakeup interrupts when armed for systen wakeup
detection.  In those cases, it may be possible to determine whether
or not the delivered interrupt is a systen wakeup one without
running the entire action handler (or handlers, if the IRQ is
shared) for the IRQ, and if the interrupt turns out to be a
non-wakeup one, the IRQ can be rearmed with the help of the
new function.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
(cherry picked from commit 3a79bc63d90750f737ab9d7219bd3091d2fd6d84)
Signed-off-by: You-Sheng Yang <vicamo.yang@canonical.com>
Acked-by: Stefan Bader <stefan.bader@canonical.com>
Acked-by: Marcelo Henrique Cerri <marcelo.cerri@canonical.com>
Signed-off-by: Kleber Sacilotto de Souza <kleber.souza@canonical.com>
include/linux/interrupt.h
kernel/irq/pm.c