Patchwork [v2,6/9] mfd: wm8994: convert to use I2C core runtime PM

login
register
mail settings
Submitter Mika Westerberg
Date Sept. 11, 2013, 3:32 p.m.
Message ID <1378913560-2752-7-git-send-email-mika.westerberg@linux.intel.com>
Download mbox | patch
Permalink /patch/274329/
State Superseded
Headers show

Comments

Mika Westerberg - Sept. 11, 2013, 3:32 p.m.
The I2C core now prepares runtime PM on behalf of the I2C client device, so
only thing the driver needs to do is to call pm_runtime_put() at the end of
its ->probe().

This patch converts wm8994 driver to use this model.

Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
---
 drivers/mfd/wm8994-core.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)
Samuel Ortiz - Sept. 11, 2013, 4:12 p.m.
Hi Mika,

On Wed, Sep 11, 2013 at 06:32:37PM +0300, Mika Westerberg wrote:
> The I2C core now prepares runtime PM on behalf of the I2C client device, so
> only thing the driver needs to do is to call pm_runtime_put() at the end of
> its ->probe().
> 
> This patch converts wm8994 driver to use this model.
> 
> Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>

I think it would make more sense for you to merge that one together with
the related i2c changes. If you prefer that I take it through MFD,
please let me know.

Cheers,
Samuel.
Mika Westerberg - Sept. 12, 2013, 9:24 a.m.
On Wed, Sep 11, 2013 at 06:12:43PM +0200, Samuel Ortiz wrote:
> Hi Mika,
> 
> On Wed, Sep 11, 2013 at 06:32:37PM +0300, Mika Westerberg wrote:
> > The I2C core now prepares runtime PM on behalf of the I2C client device, so
> > only thing the driver needs to do is to call pm_runtime_put() at the end of
> > its ->probe().
> > 
> > This patch converts wm8994 driver to use this model.
> > 
> > Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
> Acked-by: Samuel Ortiz <sameo@linux.intel.com>

Thanks!

> I think it would make more sense for you to merge that one together with
> the related i2c changes. If you prefer that I take it through MFD,
> please let me know.

I'm hoping that Wolfram takes all the I2C related patches to his tree.
--
To unsubscribe from this list: send the line "unsubscribe linux-i2c" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Samuel Ortiz - Sept. 12, 2013, 9:28 a.m.
On Thu, Sep 12, 2013 at 12:24:47PM +0300, Mika Westerberg wrote:
> On Wed, Sep 11, 2013 at 06:12:43PM +0200, Samuel Ortiz wrote:
> > I think it would make more sense for you to merge that one together with
> > the related i2c changes. If you prefer that I take it through MFD,
> > please let me know.
> 
> I'm hoping that Wolfram takes all the I2C related patches to his tree.
If Wolfram prepares an immutable branch for that, I can pull it in
mfd-next and then merge the MFD patch on top of it.

Cheers,
Samuel.

Patch

diff --git a/drivers/mfd/wm8994-core.c b/drivers/mfd/wm8994-core.c
index 3fdee90..9928bb1 100644
--- a/drivers/mfd/wm8994-core.c
+++ b/drivers/mfd/wm8994-core.c
@@ -706,8 +706,7 @@  static int wm8994_device_init(struct wm8994 *wm8994, int irq)
 		goto err_irq;
 	}
 
-	pm_runtime_enable(wm8994->dev);
-	pm_runtime_idle(wm8994->dev);
+	pm_runtime_put(wm8994->dev);
 
 	return 0;
 
@@ -723,7 +722,7 @@  err:
 
 static void wm8994_device_exit(struct wm8994 *wm8994)
 {
-	pm_runtime_disable(wm8994->dev);
+	pm_runtime_get(wm8994->dev);
 	mfd_remove_devices(wm8994->dev);
 	wm8994_irq_exit(wm8994);
 	regulator_bulk_disable(wm8994->num_supplies,