mirror of
https://github.com/torvalds/linux.git
synced 2026-06-03 20:14:06 +02:00
backlight: Remove fb_blank from struct backlight_properties
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>
This commit is contained in:
parent
9a7bb61ffe
commit
4551978bb5
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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))
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user