[PATCH v6 13/14] video: backlight: lm3533_bl: Implement backlight_scale property
Svyatoslav Ryhel <[email protected]> Fri, 31 Jul 2026 14:36:31 +0300
| Newsgroups | org.kernel.vger.linux-fbdev,dev.linux.lists.mfd,org.freedesktop.lists.dri-devel,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-iio,org.kernel.vger.linux-kernel,org.kernel.vger.linux-leds |
|---|---|
| Message-ID | <[email protected]> |
Since the device supports linear and non-linear modes, implement the backlight_scale property to describe this state. Signed-off-by: Svyatoslav Ryhel <[email protected]> Reviewed-by: Daniel Thompson (RISCstar) <[email protected]> --- drivers/video/backlight/lm3533_bl.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/video/backlight/lm3533_bl.c b/drivers/video/backlight/lm3533_bl.c index 666213cab667a..adcd6ac7cf229 100644 --- a/drivers/video/backlight/lm3533_bl.c +++ b/drivers/video/backlight/lm3533_bl.c @@ -141,6 +141,7 @@ static ssize_t store_linear(struct device *dev, struct device_attribute *attr, { struct lm3533_bl *bl = dev_get_drvdata(dev); int ctrlbank = lm3533_bl_get_ctrlbank_id(bl); + struct backlight_device *bd = bl->bd; unsigned long linear; int ret; @@ -152,6 +153,9 @@ static ssize_t store_linear(struct device *dev, struct device_attribute *attr, if (ret) return ret; + bd->props.scale = linear ? BACKLIGHT_SCALE_LINEAR : + BACKLIGHT_SCALE_NON_LINEAR; + return len; } @@ -294,6 +298,8 @@ static int lm3533_bl_probe(struct platform_device *pdev) bl->linear = device_property_read_bool(&pdev->dev, "ti,linear-mapping-mode"); + props.scale = bl->linear ? BACKLIGHT_SCALE_LINEAR : + BACKLIGHT_SCALE_NON_LINEAR; bd = devm_backlight_device_register(&pdev->dev, name, &pdev->dev, bl, &lm3533_bl_ops, &props); -- 2.53.0