Input: mcs5000_ts - convert to dev_pm_ops
authorMark Brown <broonie@opensource.wolfsonmicro.com>
Fri, 7 Jan 2011 07:01:03 +0000 (23:01 -0800)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Fri, 7 Jan 2011 07:03:03 +0000 (23:03 -0800)
There is a general move towards the use of dev_pm_ops rather than
bus specific suspend APIs as this simplifies both the bus and PM core
implementations. Convert the mcs5000_ts driver over.

Compile tested only.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
drivers/input/touchscreen/mcs5000_ts.c

index 6ee9940aaf5b371bf41370aaf571d2e6956de909..2d84c80ceb66961241f22fb8a22243d08bcd272a 100644 (file)
@@ -261,25 +261,27 @@ static int __devexit mcs5000_ts_remove(struct i2c_client *client)
 }
 
 #ifdef CONFIG_PM
-static int mcs5000_ts_suspend(struct i2c_client *client, pm_message_t mesg)
+static int mcs5000_ts_suspend(struct device *dev)
 {
+       struct i2c_client *client = to_i2c_client(dev);
+
        /* Touch sleep mode */
        i2c_smbus_write_byte_data(client, MCS5000_TS_OP_MODE, OP_MODE_SLEEP);
 
        return 0;
 }
 
-static int mcs5000_ts_resume(struct i2c_client *client)
+static int mcs5000_ts_resume(struct device *dev)
 {
+       struct i2c_client *client = to_i2c_client(dev);
        struct mcs5000_ts_data *data = i2c_get_clientdata(client);
 
        mcs5000_ts_phys_init(data);
 
        return 0;
 }
-#else
-#define mcs5000_ts_suspend     NULL
-#define mcs5000_ts_resume      NULL
+
+static SIMPLE_DEV_PM_OPS(mcs5000_ts_pm, mcs5000_ts_suspend, mcs5000_ts_resume);
 #endif
 
 static const struct i2c_device_id mcs5000_ts_id[] = {
@@ -291,10 +293,11 @@ MODULE_DEVICE_TABLE(i2c, mcs5000_ts_id);
 static struct i2c_driver mcs5000_ts_driver = {
        .probe          = mcs5000_ts_probe,
        .remove         = __devexit_p(mcs5000_ts_remove),
-       .suspend        = mcs5000_ts_suspend,
-       .resume         = mcs5000_ts_resume,
        .driver = {
                .name = "mcs5000_ts",
+#ifdef CONFIG_PM
+               .pm   = &mcs5000_ts_pm,
+#endif
        },
        .id_table       = mcs5000_ts_id,
 };