backlight: gpio_backlight: add new property default-brightness-level

Add new property to set a brightness by default at probe.

Change-Id: If89ef2068a097027dd162c8fe4fe18dd08bbfa02
Signed-off-by: Yannick Fertre <yannick.fertre@foss.st.com>
Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/199534
Reviewed-by: CITOOLS <MDG-smet-aci-reviews@list.st.com>
Reviewed-by: Philippe CORNU <philippe.cornu@foss.st.com>
Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/228192
This commit is contained in:
Yannick Fertre
2021-03-29 16:27:55 +02:00
committed by Eric Fourmont
parent a1b68db278
commit 4ef92f0d1a

View File

@ -53,6 +53,7 @@ static int gpio_backlight_probe(struct platform_device *pdev)
struct backlight_device *bl;
struct gpio_backlight *gbl;
int ret, init_brightness, def_value;
u32 value;
gbl = devm_kzalloc(dev, sizeof(*gbl), GFP_KERNEL);
if (gbl == NULL)
@ -93,7 +94,11 @@ static int gpio_backlight_probe(struct platform_device *pdev)
else
bl->props.power = FB_BLANK_UNBLANK;
bl->props.brightness = 1;
ret = device_property_read_u32(dev, "default-brightness-level", &value);
if (!ret && value <= props.max_brightness)
bl->props.brightness = value;
else
bl->props.brightness = 1;
init_brightness = backlight_get_brightness(bl);
ret = gpiod_direction_output(gbl->gpiod, init_brightness);