Re: [PATCH RESEND v4] cap11xx: add runtime PM support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Oct 2, 2015 at 7:38 AM, Daniel Mack <daniel@xxxxxxxxxx> wrote:
> On 10/02/2015 07:19 AM, Matt Ranostay wrote:
>> Puts device into DEEP SLEEP when no LEDs are in in the on-state, and no
>> input_handlers are in use. Also uses *_autosuspend to prevent a LED
>> trigger from constantly suspending and resuming device.
>>
>> Signed-off-by: Matt Ranostay <mranostay@xxxxxxxxx>
>> ---
>>  drivers/input/keyboard/cap11xx.c | 84 +++++++++++++++++++++++++++++++---------
>>  1 file changed, 65 insertions(+), 19 deletions(-)
>>
>
> ...
>
>> +static void cap11xx_shutdown_act(void *data)
>> +{
>> +     struct i2c_client *i2c_client = data;
>> +     struct cap11xx_priv *priv = i2c_get_clientdata(i2c_client);
>> +
>> +     cap11xx_set_sleep(priv, true);
>> +     pm_runtime_disable(&i2c_client->dev);
>> +     pm_runtime_set_suspended(&i2c_client->dev);
>> +}
>> +
>>  static int cap11xx_i2c_probe(struct i2c_client *i2c_client,
>>                            const struct i2c_device_id *id)
>>  {
>> @@ -363,6 +374,14 @@ static int cap11xx_i2c_probe(struct i2c_client *i2c_client,
>>       if (IS_ERR(priv->regmap))
>>               return PTR_ERR(priv->regmap);
>>
>> +     error = devm_add_action(dev, cap11xx_shutdown_act, i2c_client);
>
> Why not implement cap11xx_i2c_driver.remove or .shutdown for this?
>
>
Because of a possible race condition if any leds are registered.

> Otherwise, this looks good to me.
>
>
> Thanks,
> Daniel
>
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux