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-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html