]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
backlight: locomolcd: convert locomolcd to dev_pm_ops
authorJingoo Han <jg1.han@samsung.com>
Wed, 20 Mar 2013 04:07:42 +0000 (15:07 +1100)
committerStephen Rothwell <sfr@canb.auug.org.au>
Thu, 21 Mar 2013 05:34:01 +0000 (16:34 +1100)
Instead of using legacy suspend/resume methods, using newer dev_pm_ops
structure allows better control over power management.

Signed-off-by: Jingoo Han <jg1.han@samsung.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
drivers/video/backlight/locomolcd.c

index 146fea8aa43167c3dc67b995d1f0e1e14f7c5994..6c3ec4259a601e0d37ecd1f04a1fed0936d1a8f9 100644 (file)
@@ -157,25 +157,24 @@ static const struct backlight_ops locomobl_data = {
        .update_status  = locomolcd_set_intensity,
 };
 
-#ifdef CONFIG_PM
-static int locomolcd_suspend(struct locomo_dev *dev, pm_message_t state)
+#ifdef CONFIG_PM_SLEEP
+static int locomolcd_suspend(struct device *dev)
 {
        locomolcd_flags |= LOCOMOLCD_SUSPENDED;
        locomolcd_set_intensity(locomolcd_bl_device);
        return 0;
 }
 
-static int locomolcd_resume(struct locomo_dev *dev)
+static int locomolcd_resume(struct device *dev)
 {
        locomolcd_flags &= ~LOCOMOLCD_SUSPENDED;
        locomolcd_set_intensity(locomolcd_bl_device);
        return 0;
 }
-#else
-#define locomolcd_suspend      NULL
-#define locomolcd_resume       NULL
 #endif
 
+static SIMPLE_DEV_PM_OPS(locomolcd_pm_ops, locomolcd_suspend, locomolcd_resume);
+
 static int locomolcd_probe(struct locomo_dev *ldev)
 {
        struct backlight_properties props;
@@ -230,13 +229,12 @@ static int locomolcd_remove(struct locomo_dev *dev)
 
 static struct locomo_driver poodle_lcd_driver = {
        .drv = {
-               .name = "locomo-backlight",
+               .name   = "locomo-backlight",
+               .pm     = &locomolcd_pm_ops,
        },
        .devid  = LOCOMO_DEVID_BACKLIGHT,
        .probe  = locomolcd_probe,
        .remove = locomolcd_remove,
-       .suspend = locomolcd_suspend,
-       .resume = locomolcd_resume,
 };
 
 static int __init locomolcd_init(void)