diff options
Diffstat (limited to 'arch/arm/mach-omap2/irq.c')
| -rw-r--r-- | arch/arm/mach-omap2/irq.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/irq.c b/arch/arm/mach-omap2/irq.c index e9bc782fa414..27054025da2b 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) | |||
| 274 | } | 274 | } |
| 275 | /* MIRs are saved and restore with other PRCM registers */ | 275 | /* MIRs are saved and restore with other PRCM registers */ |
| 276 | } | 276 | } |
| 277 | |||
| 278 | void omap3_intc_suspend(void) | ||
| 279 | { | ||
| 280 | /* A pending interrupt would prevent OMAP from entering suspend */ | ||
| 281 | omap_ack_irq(0); | ||
| 282 | } | ||
| 283 | |||
| 284 | void omap3_intc_prepare_idle(void) | ||
| 285 | { | ||
| 286 | /* Disable autoidle as it can stall interrupt controller */ | ||
| 287 | intc_bank_write_reg(0, &irq_banks[0], INTC_SYSCONFIG); | ||
| 288 | } | ||
| 289 | |||
| 290 | void omap3_intc_resume_idle(void) | ||
| 291 | { | ||
| 292 | /* Re-enable autoidle */ | ||
| 293 | intc_bank_write_reg(1, &irq_banks[0], INTC_SYSCONFIG); | ||
| 294 | } | ||
| 277 | #endif /* CONFIG_ARCH_OMAP3 */ | 295 | #endif /* CONFIG_ARCH_OMAP3 */ |
