Re: [PATCH RESEND 1/2] i2c: prepare runtime PM support for I2Cclient devices

From: Mark Brown
Date: Mon Sep 09 2013 - 11:40:59 EST


On Mon, Sep 09, 2013 at 04:34:38PM +0300, Mika Westerberg wrote:

> + /*
> + * Enable runtime PM for the client device. If the client wants to
> + * participate on runtime PM it should call pm_runtime_put() in its
> + * probe() callback.
> + *
> + * User still needs to allow the PM runtime before it can actually
> + * happen.
> + */
> + pm_runtime_forbid(&client->dev);
> + pm_runtime_get_noresume(&client->dev);
> + pm_runtime_set_active(&client->dev);
> + pm_runtime_enable(&client->dev);

How is this going to interact with client devices which are already
enabling runtime PM for themselves, and what are the advantages of doing
this over having the client device enable runtime PM for itself (given
that the client still needs an explicit put() adding)?

Given that it's relatively common for devices to have both I2C and SPI
control it seems like it'd be sensible to keep the policy common between
the two buses to simplify driver implementation.

Attachment: signature.asc
Description: Digital signature