lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Mon, 5 Dec 2022 19:44:25 +0100
From:   Jacek Anaszewski <jacek.anaszewski@...il.com>
To:     Marek Vasut <marex@...x.de>, Rob Herring <robh@...nel.org>
Cc:     Pavel Machek <pavel@....cz>,
        Christoph Niedermaier <cniedermaier@...electronics.com>,
        linux-kernel@...r.kernel.org,
        Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
        kernel@...electronics.com, linux-leds@...r.kernel.org,
        devicetree@...r.kernel.org
Subject: Re: [PATCH] dt-bindings: leds: Mark label property as deprecated

Hi all,

On 12/2/22 00:41, Marek Vasut wrote:
> On 11/30/22 20:19, Rob Herring wrote:
>> On Fri, Nov 25, 2022 at 10:26:30PM +0100, Marek Vasut wrote:
>>> On 11/22/22 13:23, Pavel Machek wrote:
>>>> Hi!
>>>
>>> Hi,
>>>
>>>>> Mark the label property as deprecated as it is mentioned
>>>>> in the description.
>>>>
>>>> Lets do it the other way around. Functions (etc) don't really provide
>>>> good enough description of LED, and label is still needed.
>>>
>>> Can you please provide a clear explanation which property or approach 
>>> is the
>>> correct one for new DTs ?
>>>
>>> So far, the documentation states that "label" is deprecated, and users
>>> should replace it with "function" and "color".
>>
>> 'function' is what activity/operation the LED is associated with. It is
>> a fixed set of strings which s/w may use. It is a replacement for
>> 'linux,default-trigger'.
> 
> Isn't this 'function' more of a standardized replacement for 'label' ?

Yes it is. Introduction of function and color properties aimed at 
standardizing LED naming. Before there was only 'label' used for that,
with DT node name as fallback if 'label' property was not provided.
With introduction of 'function' and 'color' label was deprecated in
the sense that if the former two are present, they are used for
composing the LED name.

In LED documentation [0] people are encouraged to use definitions from
include/dt-bindings/leds/common.h to keep LED naming uniform.
It allows to avoid duplicates like "wlan" and "wifi".

> $ git grep LED_FUNCTION_ include/
> ...
> include/dt-bindings/leds/common.h:#define LED_FUNCTION_PLAYER5 "player-5"
> include/dt-bindings/leds/common.h:#define LED_FUNCTION_ACTIVITY "activity"
> include/dt-bindings/leds/common.h:#define LED_FUNCTION_ALARM "alarm"
> include/dt-bindings/leds/common.h:#define LED_FUNCTION_BACKLIGHT 
> "backlight"
> include/dt-bindings/leds/common.h:#define LED_FUNCTION_BLUETOOTH 
> "bluetooth"
> include/dt-bindings/leds/common.h:#define LED_FUNCTION_BOOT "boot"
> ...
> 
> Seems to me that ^ is closer to a "standardized" form of 'label' .
> 
> The LED subsystem does not infer any behavior of those LEDs based on 
> their 'function' property as far as I can tell, at least not in the way 
> 'linux,default-trigger' behaves.
> 
>> 'label' is what is printed next to the LED for a human to read. 'label'
>> can be anything and the OS shouldn't care what it is.
> 
> This part I understand. What is not clear to me is, why is 'label' being 
> un-deprecated.

It shouldn't be. It seems to be Pavel's ad-hoc decision.

> We newly have 'function', 'function-enumerator' and 'color' DT 
> properties for LEDs, which seem to be standardized forms of describing 
> what the LED is used for, which LED it is (if there are multiple), and 
> color of that LED. This was previously described in the 'label' 
> property, usually in free form of e.g. "beaglebone:green:usr2" .
> 
>> They serve 2 different purposes.
> 
> [...]

[0] Documentation/leds/leds-class.rst
-- 
Best regards,
Jacek Anaszewski

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ