Re: [PATCH 02/24] leds: core: Add support for composing LED class device names

From: Jacek Anaszewski
Date: Tue Nov 13 2018 - 14:55:36 EST


On 11/12/2018 10:23 PM, Linus Walleij wrote:
> On Sun, Nov 11, 2018 at 1:03 PM Pavel Machek <pavel@xxxxxx> wrote:
>
>>> -"devicename:colour:function"
>>> +"colour:function"
>>
>> I don't think we want to do it in all cases.
>>
>> So, on my cellphone seeing lp5523:green:led is indeed not useful.
>>
>> But on notebook with usb keyboard attached, you need to keep the
>> devicename to be able to distinguish capslock on internal keyboard and
>> capslock on first USB keyboard and capslock on second USB keyboard.
>
> I agree with Pavel.
>
> I ran into this when connecting two identical keyboards to the
> same machine. The driver worked fine up until it tries
> to create two sysfs entries with the same name for capslock.
> BOOM!

What kernel version did you use? LED core has had a protection
against name clash since the commit:

commit a96aa64cb5723d941de879a9cd1fea025d6acb1b
Author: Ricardo Ribalda Delgado <ricardo.ribalda@xxxxxxxxx>
Date: Mon Mar 30 10:45:59 2015 -0700

leds/led-class: Handle LEDs with the same name

The current code expected that every LED had an unique name. This is a
legit expectation when the device tree can no be modified or extended.
But with device tree overlays this requirement can be easily broken.

This patch finds out if the name is already in use and adds the suffix
_1, _2... if not.

Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@xxxxxxxxx>
Reported-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
Signed-off-by: Bryan Wu <cooloney@xxxxxxxxx>


> In this case I suggest "serialnumber:color:capslock" and
> similar.
>
> The important point is the string must be unique for each
> plugged device.

--
Best regards,
Jacek Anaszewski