[PATCH V4] leds: rgb: leds-group-multicolor: Implement default-intensity
From: Stefan Wahren
Date: Thu Aug 13 2026 - 05:18:28 EST
Currently it's not possible to specify the initial color of a LED
multicolor group during boot. So implement the default-intensity property
similar to the leds-pwm-multicolor driver. In case the property is
missing, the old behavior is kept.
Signed-off-by: Stefan Wahren <wahrenst@xxxxxxx>
Reviewed-by: Jonas Rebmann <jre@xxxxxxxxxxxxxx>
---
Changes in V4:
- use device_property_read_u32 instead of fwnode_property_read_u32
- simplify if statement as suggested by Lee
- drop obvious comment
Changes in V3:
- drop unnecessary patch for leds-group-multicolor.yaml
- add Jonas' RB
Changes in V2:
- adapt to approach (incl. error behavior) by Jonas Rebmann [2]
- address comments by Lee which still apply
drivers/leds/rgb/leds-group-multicolor.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/drivers/leds/rgb/leds-group-multicolor.c b/drivers/leds/rgb/leds-group-multicolor.c
index 548c7dd63ba1..f278d2a2bf5c 100644
--- a/drivers/leds/rgb/leds-group-multicolor.c
+++ b/drivers/leds/rgb/leds-group-multicolor.c
@@ -109,8 +109,10 @@ static int leds_gmc_probe(struct platform_device *pdev)
subled[i].color_index = led_cdev->color;
- /* Configure the LED intensity to its maximum */
- subled[i].intensity = max_brightness;
+ ret = device_property_read_u32(led_cdev->dev, "default-intensity",
+ &subled[i].intensity);
+ if (ret || subled[i].intensity > max_brightness)
+ subled[i].intensity = max_brightness;
}
/* Initialise the multicolor's LED class device */
--
2.43.0