Tero Kristo <tero.kristo@xxxxxxxxx> writes: > From: Tero Kristo <tero.kristo@xxxxxxxxx> > > Suspending drivers may still generate interrupts just before their suspend is > completed. Any pending interrupts here will prevent sleep. > > Signed-off-by: Tero Kristo <tero.kristo@xxxxxxxxx> Thanks, applying to PM branch, queuing for pm-fixes. Kevin > --- > arch/arm/mach-omap2/irq.c | 6 ++++++ > arch/arm/mach-omap2/pm34xx.c | 2 +- > arch/arm/plat-omap/include/mach/irqs.h | 1 + > 3 files changed, 8 insertions(+), 1 deletions(-) > > diff --git a/arch/arm/mach-omap2/irq.c b/arch/arm/mach-omap2/irq.c > index aceedd8..ee8c68a 100644 > --- a/arch/arm/mach-omap2/irq.c > +++ b/arch/arm/mach-omap2/irq.c > @@ -266,4 +266,10 @@ void omap3_intc_restore_context(void) > } > /* MIRs are saved and restore with other PRCM registers */ > } > + > +void omap3_intc_suspend(void) > +{ > + /* A pending interrupt would prevent OMAP from entering suspend */ > + omap_ack_irq(0); > +} > #endif /* CONFIG_ARCH_OMAP3 */ > diff --git a/arch/arm/mach-omap2/pm34xx.c b/arch/arm/mach-omap2/pm34xx.c > index 6782792..53544d3 100644 > --- a/arch/arm/mach-omap2/pm34xx.c > +++ b/arch/arm/mach-omap2/pm34xx.c > @@ -640,7 +640,7 @@ static int omap3_pm_suspend(void) > } > > omap_uart_prepare_suspend(); > - > + omap3_intc_suspend(); > regset_save_on_suspend = 1; > omap_sram_idle(); > regset_save_on_suspend = 0; > diff --git a/arch/arm/plat-omap/include/mach/irqs.h b/arch/arm/plat-omap/include/mach/irqs.h > index 2473910..ff1faa8 100644 > --- a/arch/arm/plat-omap/include/mach/irqs.h > +++ b/arch/arm/plat-omap/include/mach/irqs.h > @@ -485,6 +485,7 @@ extern void omap_init_irq(void); > extern int omap_irq_pending(void); > void omap3_intc_save_context(void); > void omap3_intc_restore_context(void); > +void omap3_intc_suspend(void); > #endif > > #include <mach/hardware.h> > -- > 1.5.4.3 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-omap" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html