On Tue, 27 April 2010 Jiri Kosina <jkosina@xxxxxxx> wrote: > 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. Yeah, I could drop the #else branch (of #ifconfig CONFIG_PM). Is gcc quiet about defined but unused static inline functions? It's in order to avoid those warnings that I used #define bla(). (same in other occasions of stubs returning void. Might be I forgot the inline keyword for the case I got the warning about defined but unused function. Will check tomorrow. > > #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? Thats in the case where CONFIG_HID_PICOLCD_BACKLIGHT is not defined. c.f. the #else at the beginning of this quote. Thanks, Bruno -- 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