Re: [PATCH v4 2/2] leds: add LED driver for EL15203000 board

Jacek Anaszewski
2019-08-14T18:19:03Z

Hi Oleh,

On 8/13/19 10:37 PM, Oleh Kravchenko wrote:
> Hello Jacek,
>
> Thank you for your useful review,
>
> 13.08.19 23:28, Jacek Anaszewski пише:
>> Hi Oleh,
>>
>> Thank you for the patch set.
>>
>> On 8/8/19 10:32 PM, Oleh Kravchenko wrote:
>>> +++ b/Documentation/ABI/testing/sysfs-class-led-driver-el15203000
>>> @@ -0,0 +1,22 @@
>>> +What: /sys/class/leds/<led>/hw_pattern
>>> +Date: August 2019
>>> +KernelVersion: 5.3
>>> +Description:
>>> + Specify a hardware pattern for the EL15203000 LED.
>>> + The LEDs board supports only predefined patterns by firmware
>>> + for specific LEDs.
>>> +
>>> + Breathing mode for Screen frame light tube:
>>> + "0 4000 1 4000"
>>> +
>>> + Cascade mode for Pipe LED:
>>> + "1 800 2 800 4 800 8 800 16 800 1 800 2 800 4 800 8 800 16 800"
>>
>> Why the sequence "1 800 2 800 4 800 8 800 16 800" is duplicated here?
>> It seems redundant. But aside of that - aren't the timings modifiable?
>> In other words - are these all patterns somehow configurable or they are
>> pre-programmed?
>>
>
> All pattern is predefined, you can't change them at all.
> I just tried to describe real things what happened in LED board.
> It's ticks every 800 milliseconds for Pipe LEDs.

It makes me wonder how you figured out the values? If you have
a documentation for this controller, could you share how the pattern
settings are documented?

>>> +
>>> + Inverted cascade mode for Pipe LED:
>>> + "30 800 29 800 27 800 23 800 15 800 30 800 29 800 27 800 23 800 15 800"
>>
>> Similar duplication here.
>>
>>> +
>>> + Bounce mode for Pipe LED:
>>> + "1 800 2 800 4 800 8 800 16 800 16 800 8 800 4 800 2 800 1 800"
>>
>> Instead of two repeating "16 800" you could provide "16 1600".
>> But here again is the question whether these values are configurable.
>> From what I can see in your driver implementation you're expecting
>> exactly the values provided in these examples to enable given hardware
>> pattern (led_pattern_cmp()).
>>
>>> +
>>> + Inverted bounce mode for Pipe LED:
>>> + "30 800 29 800 27 800 23 800 15 800 15 800 23 800 27 800 29 800 30 800"
>>
>
> Should I cut this patterns to smaller? Or let keep it?
>

For the first two we could do without sequence duplication.

--
Best regards,
Jacek Anaszewski