led: Update led_get_by_label()
authorPatrice Chotard <patrice.chotard@foss.st.com>
Thu, 9 Oct 2025 13:08:33 +0000 (15:08 +0200)
committerTom Rini <trini@konsulko.com>
Fri, 17 Oct 2025 14:57:45 +0000 (08:57 -0600)
commitd9915318b5d8dd9c31209541c1d99ab0edb339ac
tree622d9adb5597ed38e1f538e5116440b9c2e6e1a4
parent0eaa4b337336dbbe93395d1f2ccc18937eaafea2
led: Update led_get_by_label()

During led_init() execution, led_get_label() returns either the label
property (which is an obsolete property [1]) or the LED's node name.
It can't be the function name as dev parameter is NULL.

Later, during led_post_bind() execution, for the same LED, the attributed
label by led_get_label() can be the function name, as led_get_label()
dev's parameter is set.

During call sequence led_boot_on() => led_boot_get() => led_get_by_label()
with label given in parameter (priv->boot_led_label which is either the
label or node's name set previously in led_init()) can be different to
to uc_plat->label and returns -ENODEV.

Update led_get_by_label() to allow to retrieve LED also by its node name.

[1] https://www.kernel.org/doc/Documentation/devicetree/bindings/leds/common.yaml

Signed-off-by: Patrice Chotard <patrice.chotard@foss.st.com>
Cc: Yegor Yefremov <yegorslists@googlemail.com>
drivers/led/led-uclass.c