Re: [PATCH RESEND] mfd: arizona: Fix initialisation of the PM runtime
From: Charles Keepax
Date: Wed Aug 12 2015 - 06:20:51 EST
On Wed, Aug 12, 2015 at 09:21:16AM +0100, Lee Jones wrote:
> On Tue, 11 Aug 2015, Charles Keepax wrote:
> > The PM runtime core by default assumes a chip is suspended when runtime
> > PM is enabled. Currently the arizona driver enables runtime PM when the
> > chip is fully active and then disables the DCVDD regulator at the end of
> > arizona_dev_init. This however has several problems, firstly the if we
> > reach the end of arizona_dev_init, we did not properly follow all the
> > proceedures for shutting down the chip, and most notably we never marked
> > the chip as cache only so any writes occuring between then and the next
> > PM runtime resume will be lost. Secondly, if we are already resumed when
> > we reach the end of dev_init, then at best we get unbalanced regulator
> > enable/disables at work we lose DCVDD whilst we need it.
> > Additionally, since the commit 4f0216409f7c ("mfd: arizona: Add better
> > support for system suspend"), the PM runtime operations may
> > disable/enable the IRQ, so the IRQs must now be enabled before we call
> > any PM operations.
> > This patch adds a call to pm_runtime_set_active to inform the PM core
> > that the device is starting up active and moves the PM enabling to
> > around the IRQ initialisation to avoid any PM callbacks happening until
> > the IRQs are initialised.
> > Signed-off-by: Charles Keepax <ckeepax@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
> > ---
> > This patch was marked as applied on the 24th of June but
> > doesn't seem to have shown up in your tree yet. Just
> > resending just in case it got missed as it is a fairly
> > important bug fix.
> > Thanks,
> > Charles
> > drivers/mfd/arizona-core.c | 14 ++++++--------
> > 1 files changed, 6 insertions(+), 8 deletions(-)
> Why are you re-sending this?
Ah apologies my bad just realised I over looked the patch on your
fixes branch. I thought it had been missed, sorry for the noise.
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/