diff options
Diffstat (limited to 'kernel/irq/chip.c')
-rw-r--r-- | kernel/irq/chip.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/kernel/irq/chip.c b/kernel/irq/chip.c index 290244ca28dd..11ecf6c78c01 100644 --- a/kernel/irq/chip.c +++ b/kernel/irq/chip.c @@ -488,8 +488,10 @@ static bool irq_can_handle_pm(struct irq_desc *desc) * and suspended, disable it and notify the pm core about the * event. */ - if (irq_pm_check_wakeup(desc)) + if (unlikely(irqd_has_set(irqd, IRQD_WAKEUP_ARMED))) { + irq_pm_handle_wakeup(desc); return false; + } /* Check whether the interrupt is polled on another CPU */ if (unlikely(desc->istate & IRQS_POLL_INPROGRESS)) { |