Messages in this thread |  | | Subject | Re: AW: [PATCH v2 1/4] leds: lp50xx: add setting of default intensity from DT | From | Jacek Anaszewski <> | Date | Sat, 6 Feb 2021 21:58:39 +0100 |
| |
Sven,
On 2/6/21 2:14 PM, Sven Schuchmann wrote: > Hello Dan, > >> Von: Jacek Anaszewski <jacek.anaszewski@gmail.com> >> Gesendet: Freitag, 5. Februar 2021 19:37 >> Hi Pavel, >> >> On 2/5/21 11:23 AM, Pavel Machek wrote: >>> Hi! >>> >>>>>> patternProperties: >>>>>> "(^led-[0-9a-f]$|led)": >>>>>> @@ -99,6 +104,7 @@ examples: >>>>>> reg = <0x1>; >>>>>> color = <LED_COLOR_ID_RGB>; >>>>>> function = LED_FUNCTION_CHARGING; >>>>>> + default-intensity = <100 0 0>; >> >> How will you know which array position is for which child LED? >> I presume DT child nodes are not guaranteed to be parsed in the order >> of declaration? > > I tried to fiddle this out, but it seems Jacek is right over here. > The multi-led definition looks like this (from the documentation leds-lp50xx.yaml) > > multi-led@1 { > #address-cells = <1>; > #size-cells = <0>; > reg = <0x1>; > color = <LED_COLOR_ID_RGB>; > function = LED_FUNCTION_CHARGING; > > led-0 { > color = <LED_COLOR_ID_RED>; > }; > > led-1 { > color = <LED_COLOR_ID_GREEN>; > }; > > led-2 { > color = <LED_COLOR_ID_BLUE>; > }; > }; > > But it seems that the color definition of each led is ignored. > By ignored I mean the driver does not take care which color > is at which position. So if I change led-0 to be LED_COLOR_ID_BLUE > and led-2 to be LED_COLOR_ID_RED nothing will change if I write > from userspace. Could you help to clarify? > Then it is even hard to know which led to set with default-intensity.
See Documentation/ABI/testing/sysfs-class-led-multicolor and documentation of multi_index and multi_intensity files. It is the multi_index file that tells what is the order of colors in the multi_intensity file.
And that depends on the order of enumeration of the nodes by DT parser.
> Also it seems that the enumeration of the multi-leds should > start with multi-led@0 (and not 1 as in the documentation).
The @unit-address part of node name must match the first address specified in the reg property of the node, so this is correct. -- Best regards, Jacek Anaszewski
|  |