Re: [PATCH 1/2] dt-bindings: leds: add generic LED consumer documentation
From: Hans de Goede
Date: Thu Sep 04 2025 - 08:05:40 EST
Hi Krzysztof,
On 4-Sep-25 1:47 PM, Hans de Goede wrote:
> Hi Krzysztof,
>
> On 4-Sep-25 12:47 PM, Krzysztof Kozlowski wrote:
>> On 04/09/2025 12:29, Hans de Goede wrote:
>>> Hi Krzysztof,
>>>
>>> On 4-Sep-25 11:45 AM, Krzysztof Kozlowski wrote:
>>>> On 04/09/2025 09:26, Hans de Goede wrote:
>>>>>>>>> +maintainers:
>>>>>>>>> + - Aleksandrs Vinarskis <alex@xxxxxxxxxxxxx>
>>>>>>>>> +
>>>>>>>>> +description:
>>>>>>>>> + Some LED defined in DT are required by other DT consumers, for example
>>>>>>>>> + v4l2 subnode may require privacy or flash LED.
>>>>>>>>> +
>>>>>>>>> + Document LED properties that its consumers may define.
>>>>>>>>
>>>>>>>> We already have the trigger-source binding for "attaching" LEDs to
>>>>>>>> devices. Why does that not work here?
>>>>>>>
>>>>>>> I have not actually considered this, as the existing privacy-led solution
>>>>>>> from the original series is not trigger based. At least one of the reasons
>>>>>>> for that is that trigger source can be rather easily altered from user
>>>>>>> space, which would've been bad for this use case. If v4l2 acquires control
>>>>>>> over the LED it actually removes triggers and disables sysfs on that LED.
>>>>>>
>>>>>> So does that mean that v4l2 solves the problem of "trigger source can be
>>>>>> rather easily altered from user space"?
>>>>>
>>>>> Yes, currently the v4l2-core already does:
>>>>
>>>> Thanks, I understand that it solves the problem described in the patch,
>>>> so the patch can be dropped.
>>>
>>> I'm a bit confused now, do you mean that this dt-bindings patch can
>>> be dropped ?
>>
>> Yes.
>>
>> Alex's explanation to Rob felt confusing, so I asked for clarification.
>> You clarfiied that that v4l2 solves the problem, therefore there is no
>> problem to be solved.
>>
>> If there is no problem to be solved, this patch is not needed.
>>
>> If this patch is needed, just describe the problem accurately.
>>
>>>
>>> The existing v4l2-core code solves getting the privacy-LED on ACPI/x86_64,
>>> on DT there is no official bindings-docs for directly getting a LED with
>>
>> There are and Rob pointed to them. If Rob's answer is not enough, make
>> it explicit.
>>
>> Really, there are here some long explanations which do not really
>> explain this in simple terms. Simple term is: "existing property foo
>> does not work because <here goes the reason>".
>
> The existing trigger-source binding for "attaching" LEDs to
> devices does not work because:
>
> 1. It depends on the Linux specific LED trigger mechanism where as
> DT should describe hw in an OS agnostic manner
>
> 2. It puts the world upside down by giving possible event-sources
> for the (again) Linux specific trigger rather then allowing
> specifying e.g. specific privacy and flash LEDs as part
> of a camera dts node. IOW it makes the LED DT note point to
> the camera, while the LED is a part of the camera-module.
> not the other way around. So it does not properly allow
> describing the composition of the camera.
>
> Note that Rob actually put "" around attaching because this
> property really is not proper attaching / composition as
> we would normally do in dt.
>
> IMHO 1. alone (this being Linux specific) warrants a new better
> binding for this.
And:
3. There already are bindings using a leds = phandle-array property in:
Documentation/devicetree/bindings/leds/leds-group-multicolor.yaml
So we already have this as another and IMHO much clenaer way to tie
a LED to a device.
The suggest generic leds = phandle-array property description added
in this new binding just adds a leds-names to give names to the
various indexes in the array which is a very common design-pattern
in dt-bindings.
Regards,
Hans