]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
backlight: Remove fb_blank from struct backlight_properties
authorThomas Zimmermann <tzimmermann@suse.de>
Tue, 19 Mar 2024 09:37:25 +0000 (10:37 +0100)
committerLee Jones <lee@kernel.org>
Thu, 28 Mar 2024 10:16:26 +0000 (10:16 +0000)
Remove the field fb_blank from struct backlight_properties and remove
all code that still sets or reads it. Backlight blank status is now
tracked exclusively in struct backlight_properties.state.

The core backlight code keeps the fb_blank and state fields in sync,
but doesn't do anything else with fb_blank. Several drivers initialize
fb_blank to FB_BLANK_UNBLANK to enable the backlight. This is already
the default for the state field. So we can delete the fb_blank code
from core and drivers and rely on the state field.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Cc: Flavio Suligoi <f.suligoi@asem.it>
Cc: Nicolas Ferre <nicolas.ferre@microchip.com>
Cc: Alexandre Belloni <alexandre.belloni@bootlin.com>
Cc: Claudiu Beznea <claudiu.beznea@tuxon.dev>
Tested-by: Flavio Suligoi <f.suligoi@asem.it>
Reviewed-by: Daniel Thompson <daniel.thompson@linaro.org>
Reviewed-by: Dan Carpenter <dan.carpenter@linaro.org>
Link: https://lore.kernel.org/r/20240319093915.31778-7-tzimmermann@suse.de
Signed-off-by: Lee Jones <lee@kernel.org>
drivers/video/backlight/backlight.c
drivers/video/backlight/mp3309c.c
drivers/video/backlight/omap1_bl.c
drivers/video/fbdev/atmel_lcdfb.c
drivers/video/fbdev/omap2/omapfb/displays/panel-dsi-cm.c
drivers/video/fbdev/omap2/omapfb/displays/panel-sony-acx565akm.c
include/linux/backlight.h

index 86e1cdc8e369774a9010178e48ca6c90e0458119..691f1f3030e9852069a2bb9ef2a89a6449948619 100644 (file)
@@ -118,14 +118,12 @@ static int fb_notifier_callback(struct notifier_block *self,
                bd->fb_bl_on[node] = true;
                if (!bd->use_count++) {
                        bd->props.state &= ~BL_CORE_FBBLANK;
-                       bd->props.fb_blank = FB_BLANK_UNBLANK;
                        backlight_update_status(bd);
                }
        } else if (fb_blank != FB_BLANK_UNBLANK && bd->fb_bl_on[node]) {
                bd->fb_bl_on[node] = false;
                if (!(--bd->use_count)) {
                        bd->props.state |= BL_CORE_FBBLANK;
-                       bd->props.fb_blank = fb_blank;
                        backlight_update_status(bd);
                }
        }
index c80a1481e742bb77eaa061f674e5642d5100cbfe..7d73e85b8c143ff97399c3d26dae5f29b8be680f 100644 (file)
@@ -363,7 +363,6 @@ static int mp3309c_probe(struct i2c_client *client)
        props.scale = BACKLIGHT_SCALE_LINEAR;
        props.type = BACKLIGHT_RAW;
        props.power = FB_BLANK_UNBLANK;
-       props.fb_blank = FB_BLANK_UNBLANK;
        chip->bl = devm_backlight_device_register(dev, "mp3309c", dev, chip,
                                                  &mp3309c_bl_ops, &props);
        if (IS_ERR(chip->bl))
index 636b390f78f0459b11dce993f0d900ed07a1ba38..e461e19231ae3fc56cf11e5d041060df6aafa5d2 100644 (file)
@@ -139,7 +139,6 @@ static int omapbl_probe(struct platform_device *pdev)
 
        omap_cfg_reg(PWL);      /* Conflicts with UART3 */
 
-       dev->props.fb_blank = FB_BLANK_UNBLANK;
        dev->props.brightness = pdata->default_intensity;
        omapbl_update_status(dev);
 
index 9e391e5eaf9dae4d1acbbb6e64e9da749f699cd1..5574fb0361ee3b87244732c0f3cdf15a76223b13 100644 (file)
@@ -153,7 +153,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);
 }
 
index 47683a6c00767af9b09df2fe833e5d0b2cdb1a1b..274bdf7b3b459fbcd4e34af51dbaf937d2b0e7cf 100644 (file)
@@ -1215,7 +1215,6 @@ static int dsicm_probe(struct platform_device *pdev)
 
                ddata->bldev = bldev;
 
-               bldev->props.fb_blank = FB_BLANK_UNBLANK;
                bldev->props.power = FB_BLANK_UNBLANK;
                bldev->props.brightness = 255;
 
index 9d3ce234a78740b90121f62daebad48937e3e15a..71d2e015960c7f1ab4b7dfcca580e0fb67043fde 100644 (file)
@@ -753,7 +753,6 @@ static int acx565akm_probe(struct spi_device *spi)
        }
 
        memset(&props, 0, sizeof(props));
-       props.fb_blank = FB_BLANK_UNBLANK;
        props.power = FB_BLANK_UNBLANK;
        props.type = BACKLIGHT_RAW;
 
index 614653e07e3a860fdf4de9f7e355508783d3f64c..31600b144d7945bb4974bde87073d2d6e26039e0 100644 (file)
@@ -218,25 +218,6 @@ struct backlight_properties {
         */
        int power;
 
-       /**
-        * @fb_blank: The power state from the FBIOBLANK ioctl.
-        *
-        * When the FBIOBLANK ioctl is called @fb_blank is set to the
-        * blank parameter and the update_status() operation is called.
-        *
-        * When the backlight device is enabled @fb_blank is set
-        * to FB_BLANK_UNBLANK. When the backlight device is disabled
-        * @fb_blank is set to FB_BLANK_POWERDOWN.
-        *
-        * Backlight drivers should avoid using this property. It has been
-        * replaced by state & BL_CORE_FBLANK (although most drivers should
-        * use backlight_is_blank() as the preferred means to get the blank
-        * state).
-        *
-        * fb_blank is deprecated and will be removed.
-        */
-       int fb_blank;
-
        /**
         * @type: The type of backlight supported.
         *
@@ -366,7 +347,6 @@ static inline int backlight_enable(struct backlight_device *bd)
                return 0;
 
        bd->props.power = FB_BLANK_UNBLANK;
-       bd->props.fb_blank = FB_BLANK_UNBLANK;
        bd->props.state &= ~BL_CORE_FBBLANK;
 
        return backlight_update_status(bd);
@@ -382,7 +362,6 @@ static inline int backlight_disable(struct backlight_device *bd)
                return 0;
 
        bd->props.power = FB_BLANK_POWERDOWN;
-       bd->props.fb_blank = FB_BLANK_POWERDOWN;
        bd->props.state |= BL_CORE_FBBLANK;
 
        return backlight_update_status(bd);
@@ -395,15 +374,13 @@ static inline int backlight_disable(struct backlight_device *bd)
  * Display is expected to be blank if any of these is true::
  *
  *   1) if power in not UNBLANK
- *   2) if fb_blank is not UNBLANK
- *   3) if state indicate BLANK or SUSPENDED
+ *   2) if state indicate BLANK or SUSPENDED
  *
  * Returns true if display is expected to be blank, false otherwise.
  */
 static inline bool backlight_is_blank(const struct backlight_device *bd)
 {
        return bd->props.power != FB_BLANK_UNBLANK ||
-              bd->props.fb_blank != FB_BLANK_UNBLANK ||
               bd->props.state & (BL_CORE_SUSPENDED | BL_CORE_FBBLANK);
 }