Skip to content

Commit

Permalink
mfd: Disable twl6030 IRQ during suspend
Browse files Browse the repository at this point in the history
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 <toddpoynor@google.com>
Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
  • Loading branch information
Todd Poynor authored and Samuel Ortiz committed Oct 24, 2011
1 parent ab2b926 commit 782baa2
Showing 1 changed file with 6 additions and 0 deletions.
6 changes: 6 additions & 0 deletions drivers/mfd/twl6030-irq.c
Original file line number Diff line number Diff line change
Expand Up @@ -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;
}
Expand Down

0 comments on commit 782baa2

Please sign in to comment.