]> git.karo-electronics.de Git - mv-sheeva.git/commitdiff
Input: tsc2005 - convert to using dev_pm_ops
authorDmitry Torokhov <dmitry.torokhov@gmail.com>
Thu, 17 Mar 2011 05:08:26 +0000 (22:08 -0700)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Thu, 17 Mar 2011 06:28:04 +0000 (23:28 -0700)
Newer code should not be using legacy suspend/resume methods but
rather supply dev_pm_ops structure as it allows better control
over power management.

Tested-by: Aaro Koskinen <aaro.koskinen@nokia.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
drivers/input/touchscreen/tsc2005.c

index 5dad30a4b15368bb5444a99d8f53e071275a0969..109efbffe5ad1a7ee0dd5f436a1500f8f6b403e7 100644 (file)
@@ -27,6 +27,7 @@
 #include <linux/input.h>
 #include <linux/interrupt.h>
 #include <linux/delay.h>
+#include <linux/pm.h>
 #include <linux/spi/spi.h>
 #include <linux/spi/tsc2005.h>
 
@@ -661,8 +662,8 @@ static int __devexit tsc2005_remove(struct spi_device *spi)
        return 0;
 }
 
-#ifdef CONFIG_PM
-static int tsc2005_suspend(struct spi_device *spi, pm_message_t mesg)
+#ifdef CONFIG_PM_SLEEP
+static int tsc2005_suspend(struct device *dev)
 {
        struct spi_device *spi = to_spi_device(dev);
        struct tsc2005 *ts = spi_get_drvdata(spi);
@@ -674,7 +675,7 @@ static int tsc2005_suspend(struct spi_device *spi, pm_message_t mesg)
        return 0;
 }
 
-static int tsc2005_resume(struct spi_device *spi)
+static int tsc2005_resume(struct device *dev)
 {
        struct spi_device *spi = to_spi_device(dev);
        struct tsc2005 *ts = spi_get_drvdata(spi);
@@ -687,17 +688,16 @@ static int tsc2005_resume(struct spi_device *spi)
 }
 #endif
 
+static SIMPLE_DEV_PM_OPS(tsc2005_pm_ops, tsc2005_suspend, tsc2005_resume);
+
 static struct spi_driver tsc2005_driver = {
-       .driver = {
-               .name = "tsc2005",
-               .owner = THIS_MODULE,
+       .driver = {
+               .name   = "tsc2005",
+               .owner  = THIS_MODULE,
+               .pm     = &tsc2005_pm_ops,
        },
-#ifdef CONFIG_PM
-       .suspend = tsc2005_suspend,
-       .resume = tsc2005_resume,
-#endif
-       .probe = tsc2005_probe,
-       .remove = __devexit_p(tsc2005_remove),
+       .probe  = tsc2005_probe,
+       .remove = __devexit_p(tsc2005_remove),
 };
 
 static int __init tsc2005_init(void)