aboutsummaryrefslogtreecommitdiff
path: root/arch/arm/mach-omap2/irq.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2010-01-29 09:24:57 +0100
committerIngo Molnar <mingo@elte.hu>2010-01-29 10:36:22 +0100
commitae7f6711d6231c9ba54feb5ba9856c3775e482f8 (patch)
tree89070c82204b2503348e4fd6c51d25a169375545 /arch/arm/mach-omap2/irq.c
parent64abebf731df87e6f4ae7d9ffc340bdf0c033e44 (diff)
parentb23ff0e9330e4b11e18af984d50573598e10e7f9 (diff)
Merge branch 'perf/urgent' into perf/core
Merge reason: We want to queue up a dependent patch. Also update to later -rc's. Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/arm/mach-omap2/irq.c')
-rw-r--r--arch/arm/mach-omap2/irq.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/irq.c b/arch/arm/mach-omap2/irq.c
index e9bc782fa41..27054025da2 100644
--- a/arch/arm/mach-omap2/irq.c
+++ b/arch/arm/mach-omap2/irq.c
@@ -274,4 +274,22 @@ void omap_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);
+}
+
+void omap3_intc_prepare_idle(void)
+{
+ /* Disable autoidle as it can stall interrupt controller */
+ intc_bank_write_reg(0, &irq_banks[0], INTC_SYSCONFIG);
+}
+
+void omap3_intc_resume_idle(void)
+{
+ /* Re-enable autoidle */
+ intc_bank_write_reg(1, &irq_banks[0], INTC_SYSCONFIG);
+}
#endif /* CONFIG_ARCH_OMAP3 */