Re: [PATCH 2/2] hid: add PM support to PicoLCD device

From: Jiri Kosina
Date: Tue Apr 27 2010 - 09:28:36 EST


On Sun, 25 Apr 2010, Bruno PrÃmont wrote:

> Add PM support in order to turn off backlight on suspend, restore
> it on resume and especially restore complete state on reset-resume.
>
> Signed-off-by: Bruno PrÃmont <bonbons@xxxxxxxxxxxxxxxxx>
> ---
> drivers/hid/hid-picolcd.c | 61 +++++++++++++++++++++++++++++++++++++++++++++
> 1 files changed, 61 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/hid/hid-picolcd.c b/drivers/hid/hid-picolcd.c
> index aa6f2e1..c652390 100644
> --- a/drivers/hid/hid-picolcd.c
> +++ b/drivers/hid/hid-picolcd.c
> @@ -852,6 +852,20 @@ static inline int picolcd_resume_backlight(struct picolcd_data *data)
> return picolcd_set_brightness(data->backlight);
> }
>
> +#ifdef CONFIG_PM
> +static void picolcd_suspend_backlight(struct picolcd_data *data)
> +{
> + int bl_power = data->lcd_power;
> + if (!data->backlight)
> + return;
> +
> + data->backlight->props.power = FB_BLANK_POWERDOWN;
> + picolcd_set_brightness(data->backlight);
> + data->lcd_power = data->backlight->props.power = bl_power;
> +}
> +#else
> +#define picolcd_suspend_backlight(a)
> +#endif /* CONFIG_PM */

Stylistic thing -- it would be nice if this was actually

static inline void picolcd_suspend_backlight(struct picolcd_data *data)
{
return 0;
}

But why do you need to have it defined in !CONFIG_PM situation anyway?
It's not used otherwise at all.

> #else
> static inline int picolcd_init_backlight(struct picolcd_data *data,
> struct hid_report *report)
> @@ -865,6 +879,7 @@ static inline int picolcd_resume_backlight(struct picolcd_data *data)
> {
> return 0;
> }
> +#define picolcd_suspend_backlight(a)

Any why is it defined once more here?

Thanks,

--
Jiri Kosina
SUSE Labs, Novell Inc.
--
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/