Interrupts that are flagged as wakeup sources via set_irq_wake() should not be disabled for suspend. Signed-off-by: Kevin Hilman <khilman@xxxxxxxxxxxxxxxxxxx> --- kernel/irq/pm.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/kernel/irq/pm.c b/kernel/irq/pm.c index 638d8be..99113bd 100644 --- a/kernel/irq/pm.c +++ b/kernel/irq/pm.c @@ -28,6 +28,9 @@ void suspend_device_irqs(void) for_each_irq_desc(irq, desc) { unsigned long flags; + if (desc->status & IRQ_WAKEUP) + continue; + spin_lock_irqsave(&desc->lock, flags); __disable_irq(desc, irq, true); spin_unlock_irqrestore(&desc->lock, flags); -- 1.6.2.2 _______________________________________________ linux-pm mailing list linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/linux-pm