RE: [PATCH 2/2] mfd: tps65090: Don't use I2C-specific suspend andresume operations

From: Venu Byravarasu
Date: Sun Mar 25 2012 - 23:45:49 EST


> Signed-off-by: Mark Brown <broonie@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
> ---
>
> It's not clear to me that we should have these operations at all...
Mark,
Can you please explain why do you think that these operations are not needed?


>
> drivers/mfd/tps65090.c | 15 +++++++++------
> 1 files changed, 9 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/mfd/tps65090.c b/drivers/mfd/tps65090.c
> index ac7e8b1..6dc4c345 100644
> --- a/drivers/mfd/tps65090.c
> +++ b/drivers/mfd/tps65090.c
> @@ -335,21 +335,27 @@ static int __devexit tps65090_i2c_remove(struct
> i2c_client *client)
> }
>
> #ifdef CONFIG_PM_SLEEP
> -static int tps65090_i2c_suspend(struct i2c_client *client, pm_message_t state)
> +static int tps65090_suspend(struct device *dev)
> {
> + struct i2c_client *client = to_i2c_client(dev);
> if (client->irq)
> disable_irq(client->irq);
> return 0;
> }
>
> -static int tps65090_i2c_resume(struct i2c_client *client)
> +static int tps65090_resume(struct device *dev)
> {
> + struct i2c_client *client = to_i2c_client(dev);
> if (client->irq)
> enable_irq(client->irq);
> return 0;
> }
> #endif
>
> +static const struct dev_pm_ops tps65090_pm_ops = {
> + SET_SYSTEM_SLEEP_PM_OPS(tps65090_suspend, tps65090_resume)
> +};
> +
> static const struct i2c_device_id tps65090_id_table[] = {
> { "tps65090", 0 },
> { },
> @@ -360,13 +366,10 @@ static struct i2c_driver tps65090_driver = {
> .driver = {
> .name = "tps65090",
> .owner = THIS_MODULE,
> + .pm = &tps65090_pm_ops,
> },
> .probe = tps65090_i2c_probe,
> .remove = __devexit_p(tps65090_i2c_remove),
> -#ifdef CONFIG_PM_SLEEP
> - .suspend = tps65090_i2c_suspend,
> - .resume = tps65090_i2c_resume,
> -#endif
> .id_table = tps65090_id_table,
> };
>
> --
> 1.7.9.1

--
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/