Re: [PATCH 2/2] leds: lp5024: Add the LP5024/18 RGB LED driver

From: Vesa JÃÃskelÃinen
Date: Wed Jan 09 2019 - 01:20:13 EST


Hi Dan,

On 07/01/2019 21.34, Dan Murphy wrote:
Vesa

On 1/4/19 6:39 PM, Vesa JÃÃskelÃinen wrote:
Hi Jacek,

On 04/01/2019 23.37, Jacek Anaszewski wrote:
But, aside from that hypothetic issue, we need a solution for
LEDn_BRIGHTNESS feature of lp5024, i.e. setting color intensity
via a single register write. How would you propose to address that?

You could model it to something like this in device tree:

led-module @ <i2c-address> {
ÂÂÂÂcompatible = "lp5024";

ÂÂÂÂ// There is in hardware setup to use either linear or
ÂÂÂÂ// logarithmic scaling:
ÂÂÂÂ//enable-logarithmic-brightness;

ÂÂÂÂled0 {
ÂÂÂÂÂÂÂ // this will create led instance for LED0 in lp5024
ÂÂÂÂÂÂÂ label = "lp-led0";
ÂÂÂÂÂÂÂ // This specifies LED number within lp5024
ÂÂÂÂÂÂÂ led-index = <0>;ÂÂ // set output-base as 0*3 == 0
ÂÂÂÂÂÂÂ element-red {
ÂÂÂÂÂÂÂÂÂÂÂ // refers to OUT0
ÂÂÂÂÂÂÂÂÂÂÂ output-offset = <0>;
ÂÂÂÂÂÂÂ };
ÂÂÂÂÂÂÂ element-green {
ÂÂÂÂÂÂÂÂÂÂÂ // refers to OUT1
ÂÂÂÂÂÂÂÂÂÂÂ output-offset = <1>;
ÂÂÂÂÂÂÂ };
ÂÂÂÂÂÂÂ element-blue {
ÂÂÂÂÂÂÂÂÂÂÂ // refers to OUT2
ÂÂÂÂÂÂÂÂÂÂÂ output-offset = <2>;
ÂÂÂÂÂÂÂ };
ÂÂÂÂ};

ÂÂÂÂled1 {
ÂÂÂÂÂÂÂ // this will create led instance for LED1 in lp5024
ÂÂÂÂÂÂÂ label = "lp-led1";
ÂÂÂÂÂÂÂ // This specifies LED number within lp5024
ÂÂÂÂÂÂÂ led-index = <1>;ÂÂ // set output-base as 1*3 == 3


Can we not use led-sources like I have done already?

It was just for illustration of the idea. Names can be agreed. I have nothing against led-sources name. I was just looking at datasheet to try to undestand what it did and then tried to figure out if it could be mapped the idea I have been playing with.

I really like to keep the DT nodes simple and re-use nodes that exist if possible.

I'll reply to Jacek's email about more clarifications of the idea.

Thanks,
Vesa JÃÃskelÃinen

My code already maps and groups the outputs into the associated banks