linux/arch/arm/mach-omap2
NeilBrown e3c83c2db4 ARM: OMAP2+: INTC: fix suspend abort, set IRQCHIP_SKIP_SET_WAKE
Without an ->irq_set_wake() method in an irq_chip, calls to
enable_irq_wake() will fail.  This also causes these interrupts to not
be able to abort suspend (via check_wakeup_irqs() in late suspend.)

Currently, we don't implement ->irq_set_wake() for INTC interrupts
because they default to be wakeup enabled by setting the GRPSEL bits
in PM init.  Even though there is no ->irq_set_wake(), we want
enable_irq_wake() to succeed so these interrupts can abort suspend
when necessary.

To fix, set IRQCHIP_SKIP_SET_WAKE flag for all the INTC
interrupts which avoids trying to check irq_chip->irq_set_wake()
and failing when it doesn't exist.

Longer term, we need to implement ->irq_set_wake() for the INTC
which can manage the appropriate GRPSEL bits.

Signed-off-by: NeilBrown <neilb@suse.de>
[khilman@ti.com: rework changelog]
Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Kevin Hilman <khilman@ti.com>
2012-05-11 16:46:17 -07:00
..
2012-03-27 16:27:28 -07:00
2012-03-27 16:03:32 -07:00
2012-03-27 16:27:28 -07:00
2012-03-27 16:03:32 -07:00
2011-03-09 18:44:28 -07:00
2012-03-27 16:47:35 -07:00
2012-03-27 16:03:32 -07:00
2012-03-27 16:03:32 -07:00
2011-05-12 02:52:06 -07:00
2012-05-10 09:39:47 -07:00
2012-03-28 20:59:45 -07:00
2012-05-08 11:54:24 +05:30
2012-03-27 16:47:35 -07:00
2012-03-09 07:26:25 -08:00
2012-03-27 15:55:54 -07:00
2010-07-05 16:31:36 +03:00
2011-03-31 11:26:23 -03:00
2012-03-28 15:58:21 -07:00
2012-03-05 15:18:20 +01:00
2012-03-28 15:58:21 -07:00
2012-03-29 10:05:02 -07:00
2010-12-21 20:01:54 -07:00
2010-12-17 15:13:44 -08:00
2012-03-28 18:30:01 +01:00
2011-01-06 19:58:28 -08:00