From 782baa20b201100e14ce065bb7b890169e7a5d3c Mon Sep 17 00:00:00 2001 From: Todd Poynor Date: Mon, 26 Sep 2011 16:44:24 -0700 Subject: [PATCH] mfd: Disable twl6030 IRQ during suspend Module IRQs may still be disabled by DPM at the time the TWL6030 ISR runs, causing handle_simple_irq() to silently do nothing. This may result in missing TWL RTC alarm wakeups, for example, since the RTC child module ISR is not called to ack the IRQ. Disable the TWL6030 IRQ during suspend, enable it at DPM resume time, at which time the child module IRQs will be re-enabled. Signed-off-by: Todd Poynor Acked-by: Santosh Shilimkar Signed-off-by: Samuel Ortiz --- drivers/mfd/twl6030-irq.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/mfd/twl6030-irq.c b/drivers/mfd/twl6030-irq.c index a014ec489e68..deec3ec858bf 100644 --- a/drivers/mfd/twl6030-irq.c +++ b/drivers/mfd/twl6030-irq.c @@ -109,7 +109,13 @@ static int twl6030_irq_pm_notifier(struct notifier_block *notifier, twl_irq_wake_enabled = false; } + disable_irq(twl_irq); break; + + case PM_POST_SUSPEND: + enable_irq(twl_irq); + break; + default: break; } -- 2.39.2