On Sat, 07 Jan 2023, Sam Ravnborg via B4 Submission Endpoint <devnull+sam.ravnborg.org@xxxxxxxxxx> wrote: > From: Sam Ravnborg <sam@xxxxxxxxxxxx> > > The atmel_lcdfb had code to save/restore power state. > This is not needed so drop it. > > Introduce backlight_is_brightness() to make logic simpler. backlight_is_brightness? BR, Jani. > > Signed-off-by: Sam Ravnborg <sam@xxxxxxxxxxxx> > Cc: Nicolas Ferre <nicolas.ferre@xxxxxxxxxxxxx> > Cc: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxx> > Cc: Ludovic Desroches <ludovic.desroches@xxxxxxxxxxxxx> > Cc: linux-fbdev@xxxxxxxxxxxxxxx > Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx > --- > drivers/video/fbdev/atmel_lcdfb.c | 24 +++--------------------- > 1 file changed, 3 insertions(+), 21 deletions(-) > > diff --git a/drivers/video/fbdev/atmel_lcdfb.c b/drivers/video/fbdev/atmel_lcdfb.c > index 1fc8de4ecbeb..d297b3892637 100644 > --- a/drivers/video/fbdev/atmel_lcdfb.c > +++ b/drivers/video/fbdev/atmel_lcdfb.c > @@ -49,7 +49,6 @@ struct atmel_lcdfb_info { > struct clk *lcdc_clk; > > struct backlight_device *backlight; > - u8 bl_power; > u8 saved_lcdcon; > > u32 pseudo_palette[16]; > @@ -109,32 +108,18 @@ static u32 contrast_ctr = ATMEL_LCDC_PS_DIV8 > static int atmel_bl_update_status(struct backlight_device *bl) > { > struct atmel_lcdfb_info *sinfo = bl_get_data(bl); > - int power = sinfo->bl_power; > - int brightness = bl->props.brightness; > + int brightness; > > - /* REVISIT there may be a meaningful difference between > - * fb_blank and power ... there seem to be some cases > - * this doesn't handle correctly. > - */ > - if (bl->props.fb_blank != sinfo->bl_power) > - power = bl->props.fb_blank; > - else if (bl->props.power != sinfo->bl_power) > - power = bl->props.power; > - > - if (brightness < 0 && power == FB_BLANK_UNBLANK) > - brightness = lcdc_readl(sinfo, ATMEL_LCDC_CONTRAST_VAL); > - else if (power != FB_BLANK_UNBLANK) > - brightness = 0; > + brightness = backlight_get_brightness(bl); > > lcdc_writel(sinfo, ATMEL_LCDC_CONTRAST_VAL, brightness); > + > if (contrast_ctr & ATMEL_LCDC_POL_POSITIVE) > lcdc_writel(sinfo, ATMEL_LCDC_CONTRAST_CTR, > brightness ? contrast_ctr : 0); > else > lcdc_writel(sinfo, ATMEL_LCDC_CONTRAST_CTR, contrast_ctr); > > - bl->props.fb_blank = bl->props.power = sinfo->bl_power = power; > - > return 0; > } > > @@ -155,8 +140,6 @@ static void init_backlight(struct atmel_lcdfb_info *sinfo) > struct backlight_properties props; > struct backlight_device *bl; > > - sinfo->bl_power = FB_BLANK_UNBLANK; > - > if (sinfo->backlight) > return; > > @@ -173,7 +156,6 @@ static void init_backlight(struct atmel_lcdfb_info *sinfo) > sinfo->backlight = bl; > > bl->props.power = FB_BLANK_UNBLANK; > - bl->props.fb_blank = FB_BLANK_UNBLANK; > bl->props.brightness = atmel_bl_get_brightness(bl); > } -- Jani Nikula, Intel Open Source Graphics Center