Linux-LEDs Archive on lore.kernel.org
 help / color / Atom feed
From: Dan Murphy <dmurphy@ti.com>
To: Jacek Anaszewski <jacek.anaszewski@gmail.com>, <pavel@ucw.cz>
Cc: linux-leds@vger.kernel.org, linux-kernel@vger.kernel.org,
	"Tony Lindgren" <tony@atomide.com>,
	"Benoît Cousson" <bcousson@baylibre.com>,
	"Linus Walleij" <linus.walleij@linaro.org>,
	"Shawn Guo" <shawnguo@kernel.org>,
	"Sascha Hauer" <s.hauer@pengutronix.de>,
	"Pengutronix Kernel Team" <kernel@pengutronix.de>,
	"Fabio Estevam" <festevam@gmail.com>,
	"NXP Linux Team" <linux-imx@nxp.com>
Subject: Re: [PATCH v12 08/16] dt: bindings: lp55xx: Update binding for Multicolor Framework
Date: Fri, 11 Oct 2019 19:54:05 -0500
Message-ID: <0ab2250d-36ff-390a-04e2-48883a930a9a@ti.com> (raw)
In-Reply-To: <42fb3f20-be4c-8e9e-8035-e4eafbc1e687@gmail.com>

Jacek

On 10/11/19 3:15 PM, Jacek Anaszewski wrote:
> Dan,
>
> On 10/11/19 3:06 PM, Dan Murphy wrote:
>> Update the DT binding to include the properties to use the
>> multicolor framework for the devices that use the LP55xx
>> framework.
>>
>> Signed-off-by: Dan Murphy <dmurphy@ti.com>
>> CC: Tony Lindgren <tony@atomide.com>
>> CC: "Benoît Cousson" <bcousson@baylibre.com>
>> CC: Linus Walleij <linus.walleij@linaro.org>
>> CC: Shawn Guo <shawnguo@kernel.org>
>> CC: Sascha Hauer <s.hauer@pengutronix.de>
>> CC: Pengutronix Kernel Team <kernel@pengutronix.de>
>> CC: Fabio Estevam <festevam@gmail.com>
>> CC: NXP Linux Team <linux-imx@nxp.com>
>> ---
>>   .../devicetree/bindings/leds/leds-lp55xx.txt  | 149 +++++++++++++++---
>>   1 file changed, 124 insertions(+), 25 deletions(-)
>>
>> diff --git a/Documentation/devicetree/bindings/leds/leds-lp55xx.txt b/Documentation/devicetree/bindings/leds/leds-lp55xx.txt
>> index bfe2805c5534..736a2e1538be 100644
>> --- a/Documentation/devicetree/bindings/leds/leds-lp55xx.txt
>> +++ b/Documentation/devicetree/bindings/leds/leds-lp55xx.txt
>> @@ -1,6 +1,8 @@
>>   Binding for TI/National Semiconductor LP55xx LED Drivers
>>   
>>   Required properties:
>> +- #address-cells: 1
>> +- #size-cells: 0
>>   - compatible: one of
>>   	national,lp5521
>>   	national,lp5523
>> @@ -14,6 +16,18 @@ Required properties:
>>   Each child has own specific current settings
>>   - led-cur: Current setting at each LED channel (mA x10, 0 if LED is not connected)
>>   - max-cur: Maximun current at each LED channel.
>> +- reg: Output channel for the LED.  This is zero based channel identifier and
>> +	the data sheet is a one based channel identifier.
>> +	reg value to output to LED output number
>> +	D1 = reg value is 0
>> +	D2 = reg value is 1
>> +	D3 = reg value is 2
>> +	D4 = reg value is 3
>> +	D5 = reg value is 4
>> +	D6 = reg value is 5
>> +	D7 = reg value is 6
>> +	D8 = reg value is 7
>> +	D9 = reg value is 8
>>   
>>   Optional properties:
>>   - enable-gpio: GPIO attached to the chip's enable pin
>> @@ -35,23 +49,28 @@ example 1) LP5521
>>   on channel 0.
>>   
>>   lp5521@32 {
> While at it let's fix node prefix to led-controller.
> It will not break anyone and yet it will adapt the node naming
> to what is now recommended.

I would love to do that but honestly I prefer to fix that in a different 
patch series and not add more changes to this patch review.


>
>> +	#address-cells = <1>;
>> +	#size-cells = <0>;
>>   	compatible = "national,lp5521";
>>   	reg = <0x32>;
>>   	label = "lp5521_pri";
>>   	clock-mode = /bits/ 8 <2>;
>>   
>> -	chan0 {
>> +	chan@0 {
> Similarly in case of every child node:
>
> s/chan/led/
>
>> +		reg = <0>;
>>   		led-cur = /bits/ 8 <0x2f>;
>>   		max-cur = /bits/ 8 <0x5f>;
>>   		linux,default-trigger = "heartbeat";
>>   	};
>>   
>> -	chan1 {
>> +	chan@1 {
>> +		reg = <1>;
>>   		led-cur = /bits/ 8 <0x2f>;
>>   		max-cur = /bits/ 8 <0x5f>;
>>   	};
>>   
>> -	chan2 {
>> +	chan@2 {
>> +		reg = <2>;
>>   		led-cur = /bits/ 8 <0x2f>;
>>   		max-cur = /bits/ 8 <0x5f>;
>>   	};
>> @@ -70,59 +89,70 @@ ASEL1    ASEL0    Address
>>    VEN      VEN       35h
>>   
>>   lp5523@32 {
> s/lp5523/led-controller/
>
>> +	#address-cells = <1>;
>> +	#size-cells = <0>;
>>   	compatible = "national,lp5523";
>>   	reg = <0x32>;
>>   	clock-mode = /bits/ 8 <1>;
>>   
>> -	chan0 {
>> +	chan@0 {
>> +		reg = <0>;
>>   		chan-name = "d1";
>>   		led-cur = /bits/ 8 <0x14>;
>>   		max-cur = /bits/ 8 <0x20>;
>>   	};
>>   
>> -	chan1 {
>> +	chan@1 {
>> +		reg = <1>;
>>   		chan-name = "d2";
>>   		led-cur = /bits/ 8 <0x14>;
>>   		max-cur = /bits/ 8 <0x20>;
>>   	};
>>   
>> -	chan2 {
>> +	chan@2 {
>> +		reg = <2>;
>>   		chan-name = "d3";
>>   		led-cur = /bits/ 8 <0x14>;
>>   		max-cur = /bits/ 8 <0x20>;
>>   	};
>>   
>> -	chan3 {
>> +	chan@3 {
>> +		reg = <3>;
>>   		chan-name = "d4";
>>   		led-cur = /bits/ 8 <0x14>;
>>   		max-cur = /bits/ 8 <0x20>;
>>   	};
>>   
>> -	chan4 {
>> +	chan@4 {
>> +		reg = <4>;
>>   		chan-name = "d5";
>>   		led-cur = /bits/ 8 <0x14>;
>>   		max-cur = /bits/ 8 <0x20>;
>>   	};
>>   
>> -	chan5 {
>> +	chan@5 {
>> +		reg = <5>;
>>   		chan-name = "d6";
>>   		led-cur = /bits/ 8 <0x14>;
>>   		max-cur = /bits/ 8 <0x20>;
>>   	};
>>   
>> -	chan6 {
>> +	chan@6 {
>> +		reg = <6>;
>>   		chan-name = "d7";
>>   		led-cur = /bits/ 8 <0x14>;
>>   		max-cur = /bits/ 8 <0x20>;
>>   	};
>>   
>> -	chan7 {
>> +	chan@7 {
>> +		reg = <7>;
>>   		chan-name = "d8";
>>   		led-cur = /bits/ 8 <0x14>;
>>   		max-cur = /bits/ 8 <0x20>;
>>   	};
>>   
>> -	chan8 {
>> +	chan@8 {
>> +		reg = <8>;
>>   		chan-name = "d9";
>>   		led-cur = /bits/ 8 <0x14>;
>>   		max-cur = /bits/ 8 <0x20>;
>> @@ -133,29 +163,35 @@ example 3) LP5562
>>   4 channels are defined.
>>   
>>   lp5562@30 {
> s/lp5562/led-controller/
>
>> +	#address-cells = <1>;
>> +	#size-cells = <0>;
>>   	compatible = "ti,lp5562";
>>   	reg = <0x30>;
>>   	clock-mode = /bits/8 <2>;
>>   
>> -	chan0 {
>> +	chan@0 {
>> +		reg = <0>;
>>   		chan-name = "R";
>>   		led-cur = /bits/ 8 <0x20>;
>>   		max-cur = /bits/ 8 <0x60>;
>>   	};
>>   
>> -	chan1 {
>> +	chan@1 {
>> +		reg = <1>;
>>   		chan-name = "G";
>>   		led-cur = /bits/ 8 <0x20>;
>>   		max-cur = /bits/ 8 <0x60>;
>>   	};
>>   
>> -	chan2 {
>> +	chan@2 {
>> +		reg = <2>;
>>   		chan-name = "B";
>>   		led-cur = /bits/ 8 <0x20>;
>>   		max-cur = /bits/ 8 <0x60>;
>>   	};
>>   
>> -	chan3 {
>> +	chan@3 {
>> +		reg = <3>;
>>   		chan-name = "W";
>>   		led-cur = /bits/ 8 <0x20>;
>>   		max-cur = /bits/ 8 <0x60>;
>> @@ -167,62 +203,125 @@ example 4) LP8501
>>   Others are same as LP5523.
>>   
>>   lp8501@32 {
> s/lp8501/led-controller/
>
>> +	#address-cells = <1>;
>> +	#size-cells = <0>;
>>   	compatible = "ti,lp8501";
>>   	reg = <0x32>;
>>   	clock-mode = /bits/ 8 <2>;
>>   	pwr-sel = /bits/ 8 <3>;	/* D1~9 connected to VOUT */
>>   
>> -	chan0 {
>> +	chan@0 {
>> +		reg = <0>;
>>   		chan-name = "d1";
>>   		led-cur = /bits/ 8 <0x14>;
>>   		max-cur = /bits/ 8 <0x20>;
>>   	};
>>   
>> -	chan1 {
>> +	chan@1 {
>> +		reg = <1>;
>>   		chan-name = "d2";
>>   		led-cur = /bits/ 8 <0x14>;
>>   		max-cur = /bits/ 8 <0x20>;
>>   	};
>>   
>> -	chan2 {
>> +	chan@2 {
>> +		reg = <2>;
>>   		chan-name = "d3";
>>   		led-cur = /bits/ 8 <0x14>;
>>   		max-cur = /bits/ 8 <0x20>;
>>   	};
>>   
>> -	chan3 {
>> +	chan@3 {
>> +		reg = <3>;
>>   		chan-name = "d4";
>>   		led-cur = /bits/ 8 <0x14>;
>>   		max-cur = /bits/ 8 <0x20>;
>>   	};
>>   
>> -	chan4 {
>> +	chan@4 {
>> +		reg = <4>;
>>   		chan-name = "d5";
>>   		led-cur = /bits/ 8 <0x14>;
>>   		max-cur = /bits/ 8 <0x20>;
>>   	};
>>   
>> -	chan5 {
>> +	chan@5 {
>> +		reg = <5>;
>>   		chan-name = "d6";
>>   		led-cur = /bits/ 8 <0x14>;
>>   		max-cur = /bits/ 8 <0x20>;
>>   	};
>>   
>> -	chan6 {
>> +	chan@6 {
>> +		reg = <6>;
>>   		chan-name = "d7";
>>   		led-cur = /bits/ 8 <0x14>;
>>   		max-cur = /bits/ 8 <0x20>;
>>   	};
>>   
>> -	chan7 {
>> +	chan@7 {
>> +		reg = <7>;
>>   		chan-name = "d8";
>>   		led-cur = /bits/ 8 <0x14>;
>>   		max-cur = /bits/ 8 <0x20>;
>>   	};
>>   
>> -	chan8 {
>> +	chan@8 {
>> +		reg = <8>;
>>   		chan-name = "d9";
>>   		led-cur = /bits/ 8 <0x14>;
>>   		max-cur = /bits/ 8 <0x20>;
>>   	};
>>   };
>> +
>> +Multicolor Framework Support
>> +In addition to the nodes and properties defined above for device support the
>> +properties below are needed for multicolor framework support as defined in
>> +Documentation/devicetree/bindings/leds/leds-class-multicolor.txt
>> +
>> +Required child properties for multicolor framework
>> +	- color : Must be LED_COLOR_ID_MULTI
>> +	- function : see Documentation/devicetree/bindings/leds/common.txt
>> +
>> +Required grandchildren properties
>> +	- reg : This is the LED output of the device
>> +	- color : see Documentation/devicetree/bindings/leds/common.txt
>> +
>> +Multicolor LED example:
>> +lp5523: lp5523@32 {
> Do you really need "lp5523:" node label ?
>
> Besides:
>
> s/lp5523@32/led-controller@32/

This change I will make since I added this.

Dan

  reply index

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-11 13:06 [PATCH v12 00/16] Multicolor Framework v12 Dan Murphy
2019-10-11 13:06 ` [PATCH v12 01/16] dt: bindings: Add multicolor class dt bindings documention Dan Murphy
2019-10-11 13:06 ` [PATCH v12 02/16] dt-bindings: leds: Add multicolor ID to the color ID list Dan Murphy
2019-10-11 13:06 ` [PATCH v12 03/16] " Dan Murphy
2019-10-11 13:06 ` [PATCH v12 04/16] leds: multicolor: Introduce a multicolor class definition Dan Murphy
2019-10-11 19:53   ` Jacek Anaszewski
2019-10-14  6:18   ` kbuild test robot
2019-10-11 13:06 ` [PATCH v12 05/16] dt: bindings: lp50xx: Introduce the lp50xx family of RGB drivers Dan Murphy
2019-10-11 13:06 ` [PATCH v12 06/16] leds: lp50xx: Add the LP50XX family of the RGB LED driver Dan Murphy
2019-10-11 20:04   ` Jacek Anaszewski
2019-10-14  9:17   ` kbuild test robot
2019-10-19 17:13     ` Jacek Anaszewski
2019-10-21 11:46       ` Dan Murphy
2019-10-11 13:06 ` [PATCH v12 07/16] dt: bindings: lp55xx: Be consistent in the document with LED acronym Dan Murphy
2019-10-11 13:06 ` [PATCH v12 08/16] dt: bindings: lp55xx: Update binding for Multicolor Framework Dan Murphy
2019-10-11 20:15   ` Jacek Anaszewski
2019-10-12  0:54     ` Dan Murphy [this message]
2019-10-12 13:32       ` Jacek Anaszewski
2019-10-11 13:06 ` [PATCH v12 09/16] ARM: dts: n900: Add reg property to the LP5523 channel node Dan Murphy
2019-10-11 13:06 ` [PATCH v12 10/16] ARM: dts: imx6dl-yapp4: Add reg property to the lp5562 " Dan Murphy
2019-10-11 13:06 ` [PATCH v12 11/16] ARM: dts: ste-href: Add reg property to the LP5521 channel nodes Dan Murphy
2019-10-11 13:06 ` [PATCH v12 12/16] leds: lp55xx: Add multicolor framework support to lp55xx Dan Murphy
2019-10-11 20:36   ` Jacek Anaszewski
2019-10-12  0:50     ` Dan Murphy
2019-10-12 13:27       ` Jacek Anaszewski
2019-10-11 13:06 ` [PATCH v12 13/16] leds: lp5523: Update the lp5523 code to add intensity function Dan Murphy
2019-10-11 13:06 ` [PATCH v12 14/16] leds: lp5521: Add multicolor framework intensity support Dan Murphy
2019-10-11 13:06 ` [PATCH v12 15/16] leds: lp55xx: Fix checkpatch file permissions issues Dan Murphy
2019-10-11 13:06 ` [PATCH v12 16/16] leds: lp5523: Fix checkpatch issues in the code Dan Murphy
2019-10-11 19:40 ` [PATCH v12 00/16] Multicolor Framework v12 Jacek Anaszewski
2019-10-12  0:48   ` Dan Murphy

Reply instructions:

You may reply publically to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=0ab2250d-36ff-390a-04e2-48883a930a9a@ti.com \
    --to=dmurphy@ti.com \
    --cc=bcousson@baylibre.com \
    --cc=festevam@gmail.com \
    --cc=jacek.anaszewski@gmail.com \
    --cc=kernel@pengutronix.de \
    --cc=linus.walleij@linaro.org \
    --cc=linux-imx@nxp.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-leds@vger.kernel.org \
    --cc=pavel@ucw.cz \
    --cc=s.hauer@pengutronix.de \
    --cc=shawnguo@kernel.org \
    --cc=tony@atomide.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Linux-LEDs Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-leds/0 linux-leds/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-leds linux-leds/ https://lore.kernel.org/linux-leds \
		linux-leds@vger.kernel.org linux-leds@archiver.kernel.org
	public-inbox-index linux-leds

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-leds


AGPL code for this site: git clone https://public-inbox.org/ public-inbox