backlight: Use backlight_get_brightness() throughout
authorSam Ravnborg <sam@ravnborg.org>
Sun, 19 Jul 2020 08:07:41 +0000 (10:07 +0200)
committerLee Jones <lee.jones@linaro.org>
Mon, 20 Jul 2020 09:27:06 +0000 (10:27 +0100)
Introduce the backlight_get_brightness() helper in all
video/backlight/* drivers. This simplifies the code and align the
implementation of the update_status() operation across the different
backlight drivers.

Some of the drivers gains a little extra functionality by the change
as they now respect the fb_blank() ioctl.

Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Reviewed-by: Daniel Thompson <daniel.thompson@linaro.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
19 files changed:
drivers/video/backlight/88pm860x_bl.c
drivers/video/backlight/adp5520_bl.c
drivers/video/backlight/adp8860_bl.c
drivers/video/backlight/adp8870_bl.c
drivers/video/backlight/bd6107.c
drivers/video/backlight/corgi_lcd.c
drivers/video/backlight/da903x_bl.c
drivers/video/backlight/ep93xx_bl.c
drivers/video/backlight/hp680_bl.c
drivers/video/backlight/kb3886_bl.c
drivers/video/backlight/led_bl.c
drivers/video/backlight/lm3533_bl.c
drivers/video/backlight/locomolcd.c
drivers/video/backlight/lv5207lp.c
drivers/video/backlight/max8925_bl.c
drivers/video/backlight/pwm_bl.c
drivers/video/backlight/qcom-wled.c
drivers/video/backlight/tps65217_bl.c
drivers/video/backlight/wm831x_bl.c

index 20d96a5..25e409b 100644 (file)
@@ -121,18 +121,7 @@ out:
 
 static int pm860x_backlight_update_status(struct backlight_device *bl)
 {
-       int brightness = bl->props.brightness;
-
-       if (bl->props.power != FB_BLANK_UNBLANK)
-               brightness = 0;
-
-       if (bl->props.fb_blank != FB_BLANK_UNBLANK)
-               brightness = 0;
-
-       if (bl->props.state & BL_CORE_SUSPENDED)
-               brightness = 0;
-
-       return pm860x_backlight_set(bl, brightness);
+       return pm860x_backlight_set(bl, backlight_get_brightness(bl));
 }
 
 static int pm860x_backlight_get_brightness(struct backlight_device *bl)
index 0f63f76..686988c 100644 (file)
@@ -65,15 +65,7 @@ static int adp5520_bl_set(struct backlight_device *bl, int brightness)
 
 static int adp5520_bl_update_status(struct backlight_device *bl)
 {
-       int brightness = bl->props.brightness;
-
-       if (bl->props.power != FB_BLANK_UNBLANK)
-               brightness = 0;
-
-       if (bl->props.fb_blank != FB_BLANK_UNBLANK)
-               brightness = 0;
-
-       return adp5520_bl_set(bl, brightness);
+       return adp5520_bl_set(bl, backlight_get_brightness(bl));
 }
 
 static int adp5520_bl_get_brightness(struct backlight_device *bl)
index 1996810..ddc7f5f 100644 (file)
@@ -361,15 +361,7 @@ static int adp8860_bl_set(struct backlight_device *bl, int brightness)
 
 static int adp8860_bl_update_status(struct backlight_device *bl)
 {
-       int brightness = bl->props.brightness;
-
-       if (bl->props.power != FB_BLANK_UNBLANK)
-               brightness = 0;
-
-       if (bl->props.fb_blank != FB_BLANK_UNBLANK)
-               brightness = 0;
-
-       return adp8860_bl_set(bl, brightness);
+       return adp8860_bl_set(bl, backlight_get_brightness(bl));
 }
 
 static int adp8860_bl_get_brightness(struct backlight_device *bl)
index 4c00320..8b5213a 100644 (file)
@@ -399,15 +399,7 @@ static int adp8870_bl_set(struct backlight_device *bl, int brightness)
 
 static int adp8870_bl_update_status(struct backlight_device *bl)
 {
-       int brightness = bl->props.brightness;
-
-       if (bl->props.power != FB_BLANK_UNBLANK)
-               brightness = 0;
-
-       if (bl->props.fb_blank != FB_BLANK_UNBLANK)
-               brightness = 0;
-
-       return adp8870_bl_set(bl, brightness);
+       return adp8870_bl_set(bl, backlight_get_brightness(bl));
 }
 
 static int adp8870_bl_get_brightness(struct backlight_device *bl)
index d5d5fb4..515184f 100644 (file)
@@ -82,12 +82,7 @@ static int bd6107_write(struct bd6107 *bd, u8 reg, u8 data)
 static int bd6107_backlight_update_status(struct backlight_device *backlight)
 {
        struct bd6107 *bd = bl_get_data(backlight);
-       int brightness = backlight->props.brightness;
-
-       if (backlight->props.power != FB_BLANK_UNBLANK ||
-           backlight->props.fb_blank != FB_BLANK_UNBLANK ||
-           backlight->props.state & (BL_CORE_SUSPENDED | BL_CORE_FBBLANK))
-               brightness = 0;
+       int brightness = backlight_get_brightness(backlight);
 
        if (brightness) {
                bd6107_write(bd, BD6107_PORTSEL, BD6107_PORTSEL_LEDM(2) |
index 25ef0cb..33f5d80 100644 (file)
@@ -420,13 +420,7 @@ static int corgi_bl_set_intensity(struct corgi_lcd *lcd, int intensity)
 static int corgi_bl_update_status(struct backlight_device *bd)
 {
        struct corgi_lcd *lcd = bl_get_data(bd);
-       int intensity = bd->props.brightness;
-
-       if (bd->props.power != FB_BLANK_UNBLANK)
-               intensity = 0;
-
-       if (bd->props.fb_blank != FB_BLANK_UNBLANK)
-               intensity = 0;
+       int intensity = backlight_get_brightness(bd);
 
        if (corgibl_flags & CORGIBL_SUSPENDED)
                intensity = 0;
index 62540e4..71f21bb 100644 (file)
@@ -77,18 +77,7 @@ static int da903x_backlight_set(struct backlight_device *bl, int brightness)
 
 static int da903x_backlight_update_status(struct backlight_device *bl)
 {
-       int brightness = bl->props.brightness;
-
-       if (bl->props.power != FB_BLANK_UNBLANK)
-               brightness = 0;
-
-       if (bl->props.fb_blank != FB_BLANK_UNBLANK)
-               brightness = 0;
-
-       if (bl->props.state & BL_CORE_SUSPENDED)
-               brightness = 0;
-
-       return da903x_backlight_set(bl, brightness);
+       return da903x_backlight_set(bl, backlight_get_brightness(bl));
 }
 
 static int da903x_backlight_get_brightness(struct backlight_device *bl)
index 4149e0b..2387009 100644 (file)
@@ -36,13 +36,7 @@ static int ep93xxbl_set(struct backlight_device *bl, int brightness)
 
 static int ep93xxbl_update_status(struct backlight_device *bl)
 {
-       int brightness = bl->props.brightness;
-
-       if (bl->props.power != FB_BLANK_UNBLANK ||
-           bl->props.fb_blank != FB_BLANK_UNBLANK)
-               brightness = 0;
-
-       return ep93xxbl_set(bl, brightness);
+       return ep93xxbl_set(bl, backlight_get_brightness(bl));
 }
 
 static int ep93xxbl_get_brightness(struct backlight_device *bl)
index 8ea42b8..9123c33 100644 (file)
@@ -33,12 +33,8 @@ static void hp680bl_send_intensity(struct backlight_device *bd)
 {
        unsigned long flags;
        u16 v;
-       int intensity = bd->props.brightness;
+       int intensity = backlight_get_brightness(bd);
 
-       if (bd->props.power != FB_BLANK_UNBLANK)
-               intensity = 0;
-       if (bd->props.fb_blank != FB_BLANK_UNBLANK)
-               intensity = 0;
        if (hp680bl_suspended)
                intensity = 0;
 
index 1dfe13c..55794b2 100644 (file)
@@ -87,12 +87,8 @@ static const struct dmi_system_id kb3886bl_device_table[] __initconst = {
 
 static int kb3886bl_send_intensity(struct backlight_device *bd)
 {
-       int intensity = bd->props.brightness;
+       int intensity = backlight_get_brightness(bd);
 
-       if (bd->props.power != FB_BLANK_UNBLANK)
-               intensity = 0;
-       if (bd->props.fb_blank != FB_BLANK_UNBLANK)
-               intensity = 0;
        if (kb3886bl_flags & KB3886BL_SUSPENDED)
                intensity = 0;
 
index 3f66549..f54d256 100644 (file)
@@ -54,12 +54,7 @@ static void led_bl_power_off(struct led_bl_data *priv)
 static int led_bl_update_status(struct backlight_device *bl)
 {
        struct led_bl_data *priv = bl_get_data(bl);
-       int brightness = bl->props.brightness;
-
-       if (bl->props.power != FB_BLANK_UNBLANK ||
-           bl->props.fb_blank != FB_BLANK_UNBLANK ||
-           bl->props.state & BL_CORE_FBBLANK)
-               brightness = 0;
+       int brightness = backlight_get_brightness(bl);
 
        if (brightness > 0)
                led_bl_set_brightness(priv, brightness);
index 0c7830f..1df1b66 100644 (file)
@@ -39,14 +39,8 @@ static inline int lm3533_bl_get_ctrlbank_id(struct lm3533_bl *bl)
 static int lm3533_bl_update_status(struct backlight_device *bd)
 {
        struct lm3533_bl *bl = bl_get_data(bd);
-       int brightness = bd->props.brightness;
 
-       if (bd->props.power != FB_BLANK_UNBLANK)
-               brightness = 0;
-       if (bd->props.fb_blank != FB_BLANK_UNBLANK)
-               brightness = 0;
-
-       return lm3533_ctrlbank_set_brightness(&bl->cb, (u8)brightness);
+       return lm3533_ctrlbank_set_brightness(&bl->cb, backlight_get_brightness(bd));
 }
 
 static int lm3533_bl_get_brightness(struct backlight_device *bd)
index cdc02e0..297ee2e 100644 (file)
@@ -111,12 +111,8 @@ static int current_intensity;
 
 static int locomolcd_set_intensity(struct backlight_device *bd)
 {
-       int intensity = bd->props.brightness;
+       int intensity = backlight_get_brightness(bd);
 
-       if (bd->props.power != FB_BLANK_UNBLANK)
-               intensity = 0;
-       if (bd->props.fb_blank != FB_BLANK_UNBLANK)
-               intensity = 0;
        if (locomolcd_flags & LOCOMOLCD_SUSPENDED)
                intensity = 0;
 
index c6ad73a..1842ae9 100644 (file)
@@ -46,12 +46,7 @@ static int lv5207lp_write(struct lv5207lp *lv, u8 reg, u8 data)
 static int lv5207lp_backlight_update_status(struct backlight_device *backlight)
 {
        struct lv5207lp *lv = bl_get_data(backlight);
-       int brightness = backlight->props.brightness;
-
-       if (backlight->props.power != FB_BLANK_UNBLANK ||
-           backlight->props.fb_blank != FB_BLANK_UNBLANK ||
-           backlight->props.state & (BL_CORE_SUSPENDED | BL_CORE_FBBLANK))
-               brightness = 0;
+       int brightness = backlight_get_brightness(backlight);
 
        if (brightness) {
                lv5207lp_write(lv, LV5207LP_CTRL1,
index 97cc260..e607ec6 100644 (file)
@@ -64,18 +64,7 @@ out:
 
 static int max8925_backlight_update_status(struct backlight_device *bl)
 {
-       int brightness = bl->props.brightness;
-
-       if (bl->props.power != FB_BLANK_UNBLANK)
-               brightness = 0;
-
-       if (bl->props.fb_blank != FB_BLANK_UNBLANK)
-               brightness = 0;
-
-       if (bl->props.state & BL_CORE_SUSPENDED)
-               brightness = 0;
-
-       return max8925_backlight_set(bl, brightness);
+       return max8925_backlight_set(bl, backlight_get_brightness(bl));
 }
 
 static int max8925_backlight_get_brightness(struct backlight_device *bl)
index 82b8d75..eff64db 100644 (file)
@@ -108,14 +108,9 @@ static int compute_duty_cycle(struct pwm_bl_data *pb, int brightness)
 static int pwm_backlight_update_status(struct backlight_device *bl)
 {
        struct pwm_bl_data *pb = bl_get_data(bl);
-       int brightness = bl->props.brightness;
+       int brightness = backlight_get_brightness(bl);
        struct pwm_state state;
 
-       if (bl->props.power != FB_BLANK_UNBLANK ||
-           bl->props.fb_blank != FB_BLANK_UNBLANK ||
-           bl->props.state & BL_CORE_FBBLANK)
-               brightness = 0;
-
        if (pb->notify)
                brightness = pb->notify(pb->dev, brightness);
 
index c25c311..3bc7800 100644 (file)
@@ -433,14 +433,9 @@ static int wled5_ovp_delay(struct wled *wled)
 static int wled_update_status(struct backlight_device *bl)
 {
        struct wled *wled = bl_get_data(bl);
-       u16 brightness = bl->props.brightness;
+       u16 brightness = backlight_get_brightness(bl);
        int rc = 0;
 
-       if (bl->props.power != FB_BLANK_UNBLANK ||
-           bl->props.fb_blank != FB_BLANK_UNBLANK ||
-           bl->props.state & BL_CORE_FBBLANK)
-               brightness = 0;
-
        mutex_lock(&wled->lock);
        if (brightness) {
                rc = wled->wled_set_brightness(wled, brightness);
index 762e3fe..8457166 100644 (file)
@@ -77,15 +77,7 @@ static int tps65217_bl_update_status(struct backlight_device *bl)
 {
        struct tps65217_bl *tps65217_bl = bl_get_data(bl);
        int rc;
-       int brightness = bl->props.brightness;
-
-       if (bl->props.state & BL_CORE_SUSPENDED)
-               brightness = 0;
-
-       if ((bl->props.power != FB_BLANK_UNBLANK) ||
-               (bl->props.fb_blank != FB_BLANK_UNBLANK))
-               /* framebuffer in low power mode or blanking active */
-               brightness = 0;
+       int brightness = backlight_get_brightness(bl);
 
        if (brightness > 0) {
                rc = tps65217_reg_write(tps65217_bl->tps,
index e55977d..c5aaee2 100644 (file)
@@ -91,18 +91,7 @@ err:
 
 static int wm831x_backlight_update_status(struct backlight_device *bl)
 {
-       int brightness = bl->props.brightness;
-
-       if (bl->props.power != FB_BLANK_UNBLANK)
-               brightness = 0;
-
-       if (bl->props.fb_blank != FB_BLANK_UNBLANK)
-               brightness = 0;
-
-       if (bl->props.state & BL_CORE_SUSPENDED)
-               brightness = 0;
-
-       return wm831x_backlight_set(bl, brightness);
+       return wm831x_backlight_set(bl, backlight_get_brightness(bl));
 }
 
 static int wm831x_backlight_get_brightness(struct backlight_device *bl)