mfd: Ensure WM831x charger interrupts are acknowledged when suspending
authorMark Brown <broonie@opensource.wolfsonmicro.com>
Thu, 8 Apr 2010 08:02:39 +0000 (10:02 +0200)
committerSamuel Ortiz <sameo@linux.intel.com>
Thu, 27 May 2010 23:37:39 +0000 (01:37 +0200)
commitb03b4d7cdd8f18395494478634707c6f132080d6
tree61f306b5b2842fa65c2813be85ccbbdf867aaddc
parent0d7e0e399d7fcd5ddc3313a1aa2135fab3226d8f
mfd: Ensure WM831x charger interrupts are acknowledged when suspending

The charger interrupts on the WM831x are unconditionally a wake source
for the system. If the power driver is not able to monitor them (for
example, due to the IRQ line not having been wired up on the system)
then any charger interrupt will prevent the system suspending for any
meaningful amount of time since nothing will ack them.

Avoid this issue by manually acknowledging these interrupts when we
suspend the WM831x core device if they are masked. If software is
actually using the interrupts then they will be unmasked and this
change will have no effect.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
drivers/mfd/wm831x-core.c
include/linux/mfd/wm831x/core.h