Re: [v2] backlight: Convert from Legacy pm ops to dev_pm_ops

From: sebastian . capella
Date: Tue Feb 18 2014 - 17:20:49 EST


Shuah Khan <shuah.kh@xxxxxxxxxxx> wrote:

> Convert drivers/video/backlight/class to use dev_pm_ops for power
> management and remove Legacy PM ops hooks. With this change, rtc class
> registers suspend/resume callbacks via class->pm (dev_pm_ops) instead of
> Legacy class->suspend/resume. When __device_suspend() runs call-backs,
> it will find class->pm ops for the backlight class.
>
> Signed-off-by: Shuah Khan <shuah.kh@xxxxxxxxxxx>
> Cc: Shuah Khan <shuahkhan@xxxxxxxxx>
>
> ---
> v2: Updated changelog to correct device class.
>
> drivers/video/backlight/backlight.c | 8 +++++---
> 1 file changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/video/backlight/backlight.c b/drivers/video/backlight/backlight.c
> index c74e7aa..0ffb251 100644
> --- a/drivers/video/backlight/backlight.c
> +++ b/drivers/video/backlight/backlight.c
> @@ -208,7 +208,7 @@ static ssize_t backlight_show_actual_brightness(struct device *dev,
>
> static struct class *backlight_class;
>
> -static int backlight_suspend(struct device *dev, pm_message_t state)
> +static int backlight_suspend(struct device *dev)
> {
> struct backlight_device *bd = to_backlight_device(dev);
>
> @@ -236,6 +236,9 @@ static int backlight_resume(struct device *dev)
> return 0;
> }
>
> +static SIMPLE_DEV_PM_OPS(backlight_class_dev_pm_ops, backlight_suspend,
> + backlight_resume);
> +
> static void bl_device_release(struct device *dev)
> {
> struct backlight_device *bd = to_backlight_device(dev);
> @@ -414,8 +417,7 @@ static int __init backlight_class_init(void)
> }
>
> backlight_class->dev_attrs = bl_device_attributes;
> - backlight_class->suspend = backlight_suspend;
> - backlight_class->resume = backlight_resume;
> + backlight_class->pm = &backlight_class_dev_pm_ops;
> return 0;
> }
> --
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/