Re: [PATCH v1 1/2] dt-bindings: leds: add binding for aw200xx
From: Krzysztof Kozlowski
Date: Fri Dec 02 2022 - 11:41:49 EST
On 28/11/2022 18:43, Martin Kurbanov wrote:
> Hi. Thank you for quick reply.
>
> On 25.11.2022 11:29, Krzysztof Kozlowski wrote:
>>> +
>>> + imax:
>>> + maxItems: 1
>>> + description:
>>> + Maximum supply current, see dt-bindings/leds/leds-aw200xx.h
>>
>> No. Use existing properties from common.yaml. This looks like
>> led-max-microamp and it is per LED, not per entire device.
>
> The AW200XX LED chip does not support imax setup per led.
> Imax is the global parameter over the all leds. I suppose, it's better
> to add vendor prefix or take minimum from all subnodes?
> How do you think?
Have in mind that led-max-microamp is a required property in some cases,
so skipping it and using per-device properties does not solve the
problem of adjusting proper currents. What if each LED you set for
something which in total gives more than your imax?
>
>
>>> +/* Global max current (IMAX) */
>>> +#define AW200XX_IMAX_3_3MA 8
>>> +#define AW200XX_IMAX_6_7MA 9
>>
>> No. Bindings are not for storing register constants. Feel free to store
>> here IDs (ID start from 0 or 1 and is incremented by 1)... but how the
>> IMAX even matches any need for "ID"?
>
> IMAX can be chosen from the predefined values in the
> datasheet (10mA, 20mA, etc). Do you mean the IMAX should be round down
> to nearest supported value in the driver?
What Linux driver support does not matter here. Bindings should reflect
hardware and the same time not store register constants but logical
values (for current this is in uA).
Best regards,
Krzysztof