Re: [PATCH v8 7/9] dt: bindings: lp50xx: Introduce the lp50xx family of RGB drivers

From: Jacek Anaszewski
Date: Sat Sep 21 2019 - 11:13:33 EST


Dan,

On 9/20/19 7:41 PM, Dan Murphy wrote:
> Introduce the bindings for the Texas Instruments LP5036, LP5030, LP5024,
> LP5018, LP5012 and LP5009 RGB LED device driver. The LP5036/30/24/18/12/9
> can control RGB LEDs individually or as part of a control bank group.
> These devices have the ability to adjust the mixing control for the RGB
> LEDs to obtain different colors independent of the overall brightness of
> the LED grouping.
>
> Datasheet:
> http://www.ti.com/lit/ds/symlink/lp5012.pdf
> http://www.ti.com/lit/ds/symlink/lp5024.pdf
> http://www.ti.com/lit/ds/symlink/lp5036.pdf
>
> Signed-off-by: Dan Murphy <dmurphy@xxxxxx>
> ---
> .../devicetree/bindings/leds/leds-lp50xx.txt | 148 ++++++++++++++++++
> 1 file changed, 148 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/leds/leds-lp50xx.txt
>
> diff --git a/Documentation/devicetree/bindings/leds/leds-lp50xx.txt b/Documentation/devicetree/bindings/leds/leds-lp50xx.txt
> new file mode 100644
> index 000000000000..9d05f43042e0
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/leds/leds-lp50xx.txt
> @@ -0,0 +1,148 @@
> +* Texas Instruments - LP5009/12/18/24/30/36 RGB LED driver
> +
> +The LP50XX is multi-channel, I2C RGB LED Drivers that can group RGB LEDs into
> +a LED group or control them individually.
> +
> +The difference in these RGB LED drivers is the number of supported RGB modules.
> +
> +Required parent properties:
> + - compatible:
> + "ti,lp5009"
> + "ti,lp5012"
> + "ti,lp5018"
> + "ti,lp5024"
> + "ti,lp5030"
> + "ti,lp5036"
> + - reg : I2C slave address
> + lp5009/12 - 0x28
> + lp5018/24 - 0x28
> + lp5030/36 - 0x30
> + - #address-cells : 1
> + - #size-cells : 0
> +
> +Optional parent properties:
> + - enable-gpios : gpio pin to enable/disable the device.
> + - vled-supply : LED supply
> +
> +Required child properties:
> + - #address-cells : 1
> + - #size-cells : 0
> + - reg : This is the LED module number.
> + - color : see Documentation/devicetree/bindings/leds/common.txt
> + - function : see Documentation/devicetree/bindings/leds/common.txt
> +
> +Required child properties only is LED modules will be banked:
> + - ti,led-bank : This property denotes the LED module numbers that will
> + be controlled as a single RGB cluster. Each LED module
> + number will be controlled by a single LED class instance.
> + There can only be one instance of the ti,led-bank
> + property for each device node.
> +
> +Required grandchildren properties:
> + - reg : A single entry denoting the LED module that controls
> + the RGB cluster.
> + - color : see Documentation/devicetree/bindings/leds/leds-multicolor.txt
> + - led-sources : see Documentation/devicetree/bindings/leds/common.txt
> +
> +The LED outputs associated with the LED modules are defined in Table 1 of the
> +corresponding data sheets.

We must enclose this information here.

> +
> +LP5009 - 2 Total RGB cluster LED outputs 0-1
> +LP5012 - 4 Total RGB cluster LED outputs 0-3
> +LP5018 - 6 Total RGB cluster LED outputs 0-5
> +LP5024 - 8 Total RGB cluster LED outputs 0-7
> +LP5030 - 10 Total RGB cluster LED outputs 0-9
> +LP5036 - 12 Total RGB cluster LED outputs 0-11
> +
> +Optional child properties:
> + - label : see Documentation/devicetree/bindings/leds/common.txt
> + - linux,default-trigger :
> + see Documentation/devicetree/bindings/leds/common.txt
> +
> +Examples:
> +led-controller@29 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + compatible = "ti,lp5024";
> + reg = <0x29>;
> + enable-gpios = <&gpio1 28 GPIO_ACTIVE_HIGH>;
> + vled-supply = <&vmmcsd_fixed>;
> +
> + multi-led@1 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <1>;
> + color = <LED_COLOR_ID_MULTI>;
> + function = LED_FUNCTION_STATUS;
> +
> + led@3 {
> + reg = <3>;
> + color = <LED_COLOR_ID_RED>;
> + };
> +
> + led@4 {
> + reg = <4>;
> + color = <LED_COLOR_ID_GREEN>;
> + };
> +
> + led@5 {
> + reg = <5>;
> + color = <LED_COLOR_ID_BLUE>;
> + };
> + };
> +
> + multi-led@2 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <2>;
> + color = <LED_COLOR_ID_MULTI>;
> + function = LED_FUNCTION_STANDBY;
> + ti,led-bank = <2 3 5>;
> +
> + led@6 {
> + reg = <0x6>;
> + color = <LED_COLOR_ID_RED>;
> + led-sources = <6 9 15>;
> + };
> +
> + led@7 {
> + reg = <0x7>;
> + color = <LED_COLOR_ID_GREEN>;
> + led-sources = <7 10 16>;
> + };
> +
> + led@8 {
> + reg = <0x8>;
> + color = <LED_COLOR_ID_BLUE>;
> + led-sources = <8 11 17>;
> + };
> + };
> +
> + multi-led@4 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <4>;
> + color = <LED_COLOR_ID_MULTI>;
> + function = LED_FUNCTION_ACTIVITY;
> +
> + led@12 {
> + reg = <12>;
> + color = <LED_COLOR_ID_RED>;
> + };
> +
> + led@13 {
> + reg = <13>;
> + color = <LED_COLOR_ID_GREEN>;
> + };
> +
> + led@14 {
> + reg = <14>;
> + color = <LED_COLOR_ID_BLUE>;
> + };
> + };
> +};
> +
> +For more product information please see the link below:
> +http://www.ti.com/lit/ds/symlink/lp5012.pdf
> +http://www.ti.com/lit/ds/symlink/lp5024.pdf
> +http://www.ti.com/lit/ds/symlink/lp5036.pdf
>

--
Best regards,
Jacek Anaszewski