new file mode 100644
@@ -0,0 +1,179 @@
+# SPDX-License-Identifier: GPL-2.0
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/leds/leds-lp50xx.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: LED driver for LP50XX RGB LED from Texas Instruments.
+
+maintainers:
+ - Dan Murphy <dmurphy@ti.com>
+
+description: |
+ 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.
+
+ 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
+
+properties:
+ compatible:
+ oneOf:
+ - const: ti,lp5009
+ - const: ti,lp5012
+ - const: ti,lp5018
+ - const: ti,lp5024
+ - const: ti,lp5030
+ - const: ti,lp5036
+
+ reg:
+ maxItems: 1
+ description:
+ I2C slave address
+ lp5009/12 - 0x14, 0x15, 0x16, 0x17
+ lp5018/24 - 0x28, 0x29, 0x2a, 0x2b
+ lp5030/36 - 0x30, 0x31, 0x32, 0x33
+
+ enable-gpios:
+ description: GPIO pin to enable/disable the device.
+
+ vled-supply:
+ description: LED supply.
+
+ child-node:
+ type: object
+ properties:
+ reg:
+ description: This is the LED module number.
+
+ color:
+ description: Must be LED_COLOR_ID_MULTI
+
+ function:
+ description: see Documentation/devicetree/bindings/leds/common.txt
+
+ ti,led-bank:
+ description:
+ 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. This is a required node is the LED
+ modules are to be backed.
+ $ref: /schemas/types.yaml#definitions/uint32-array
+
+ required:
+ - reg
+ - color
+ - function
+
+ grandchild-node:
+ type: object
+ properties:
+ reg:
+ description:
+ A single entry denoting the LED output that controls the monochrome LED.
+
+ color:
+ description:
+ see Documentation/devicetree/bindings/leds/common.txt
+
+ led-sources:
+ description:
+ 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.
+ LP5009 - 3 Total RGB cluster LED outputs 0-2
+ 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
+
+ label:
+ description: |
+ Optional node - see Documentation/devicetree/bindings/leds/common.txt
+
+ linux,default-trigger:
+ description: |
+ Optional node - see Documentation/devicetree/bindings/leds/common.txt
+
+ required:
+ - reg
+ - color
+
+required:
+ - compatible
+ - reg
+
+examples:
+ - |
+ #include <dt-bindings/gpio/gpio.h>
+ #include <dt-bindings/leds/common.h>
+ i2c {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ led-controller@14 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ compatible = "ti,lp5009";
+ reg = <0x14>;
+ enable-gpios = <&gpio1 16>;
+ multi-led@1 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg = <1>;
+ color = <LED_COLOR_ID_MULTI>;
+ function = LED_FUNCTION_CHARGING;
+
+ led@0 {
+ reg = <0>;
+ color = <LED_COLOR_ID_RED>;
+ };
+
+ led@1 {
+ reg = <1>;
+ color = <LED_COLOR_ID_GREEN>;
+ };
+
+ led@2 {
+ reg = <2>;
+ 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>;
+ };
+ };
+ };
+ };
+
+...