genirq/PM: Introduce IRQCHIP_ENABLE_WAKEUP_ON_SUSPEND flag
authorMaulik Shah <mkshah@codeaurora.org>
Mon, 28 Sep 2020 04:32:01 +0000 (10:02 +0530)
committerMarc Zyngier <maz@kernel.org>
Tue, 6 Oct 2020 10:23:41 +0000 (11:23 +0100)
commit90428a8eb4947f9c7c905a178f3520dc7e2ee6d2
tree171d58fc480ed090807c29cd9bc27e6e5ca24930
parentf41aaca593377a4fe3984459fd4539481263b4cd
genirq/PM: Introduce IRQCHIP_ENABLE_WAKEUP_ON_SUSPEND flag

An interrupt that is disabled/masked but set for wakeup may still need to
be able to wake up the system from sleep states like "suspend to RAM".

To that effect, introduce the IRQCHIP_ENABLE_WAKEUP_ON_SUSPEND flag.
If the irqchip have this flag set, the irq PM code will enable/unmask
the irqs that are marked for wakeup, but that are in a disabled state.

On resume, such irqs will be restored back to their disabled state.

Suggested-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Maulik Shah <mkshah@codeaurora.org>
[maz: commit message fix-up]
Signed-off-by: Marc Zyngier <maz@kernel.org>
Tested-by: Stephen Boyd <swboyd@chromium.org>
Reviewed-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Link: https://lore.kernel.org/r/1601267524-20199-4-git-send-email-mkshah@codeaurora.org
include/linux/irq.h
kernel/irq/debugfs.c
kernel/irq/pm.c