[PATCH v2 1/2] led: led-class: Read max-brightness from devicetree

From: Astrid Rost
Date: Fri Jun 30 2023 - 05:23:29 EST


Add max-brightness in order to reduce the current on the connected LEDs.
Normally, the maximum brightness is determined by the hardware, and this
property is not required. This property is used to set a software limit.
It could happen that an LED is made so bright that it gets damaged or
causes damage due to restrictions in a specific system, such as mounting
conditions. Note that led-max-microamp should be preferably used, if it
is supported by the controller.

Signed-off-by: Astrid Rost <astrid.rost@xxxxxxxx>
---
drivers/leds/led-class.c | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/drivers/leds/led-class.c b/drivers/leds/led-class.c
index 9255bc11f99d..ce652abf9336 100644
--- a/drivers/leds/led-class.c
+++ b/drivers/leds/led-class.c
@@ -457,6 +457,10 @@ int led_classdev_register_ext(struct device *parent,
if (fwnode_property_present(init_data->fwnode,
"retain-state-shutdown"))
led_cdev->flags |= LED_RETAIN_AT_SHUTDOWN;
+
+ fwnode_property_read_u32(init_data->fwnode,
+ "max-brightness",
+ &led_cdev->max_brightness);
}
} else {
proposed_name = led_cdev->name;
--
2.30.2