Re: [PATCH 1/2] dt-bindings: leds: add generic LED consumer documentation
From: Hans de Goede <hansg@kernel.org>
Date: 2025-09-04 12:05:12
Also in:
linux-leds, lkml
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:quoted
On 04/09/2025 12:29, Hans de Goede wrote:quoted
Hi Krzysztof, On 4-Sep-25 11:45 AM, Krzysztof Kozlowski wrote:quoted
On 04/09/2025 09:26, Hans de Goede wrote:quoted
quoted
quoted
quoted
quoted
+maintainers: + - Aleksandrs Vinarskis [off-list ref] + +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.quoted
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 withThere 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