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

From: Jacek Anaszewski
Date: Sat Jul 01 2023 - 07:09:37 EST


Hi Astrid,

On 6/30/23 11:22, Astrid Rost wrote:
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;

We have led-max-microamp for that and every LED class driver is supposed
to calculate its max brightness level basing on it.

--
Best regards,
Jacek Anaszewski