blob: 402c25424525147952efb78819954e8211a0f10f [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/leds/leds-lp50xx.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: LED driver for LP50XX RGB LED from Texas Instruments.
8
9maintainers:
10 - Andrew Davis <afd@ti.com>
11
12description: |
13 The LP50XX is multi-channel, I2C RGB LED Drivers that can group RGB LEDs into
14 a LED group or control them individually.
15
16 The difference in these RGB LED drivers is the number of supported RGB
17 modules.
18
19 For more product information please see the link below:
20 https://www.ti.com/lit/ds/symlink/lp5012.pdf
21 https://www.ti.com/lit/ds/symlink/lp5024.pdf
22 https://www.ti.com/lit/ds/symlink/lp5036.pdf
23
24properties:
25 compatible:
26 enum:
27 - ti,lp5009
28 - ti,lp5012
29 - ti,lp5018
30 - ti,lp5024
31 - ti,lp5030
32 - ti,lp5036
33
34 reg:
35 maxItems: 1
36 description:
37 I2C slave address
38 lp5009/12 - 0x14, 0x15, 0x16, 0x17
39 lp5018/24 - 0x28, 0x29, 0x2a, 0x2b
40 lp5030/36 - 0x30, 0x31, 0x32, 0x33
41
42 enable-gpios:
43 maxItems: 1
44 description: GPIO pin to enable/disable the device.
45
46 vled-supply:
47 description: LED supply.
48
49 '#address-cells':
50 const: 1
51
52 '#size-cells':
53 const: 0
54
55patternProperties:
56 '^multi-led@[0-9a-f]$':
57 type: object
58 $ref: leds-class-multicolor.yaml#
59 unevaluatedProperties: false
60
61 properties:
62 reg:
63 minItems: 1
64 maxItems: 12
65 description:
66 This property denotes the LED module number(s) that is used on the
67 for the child node. The LED modules can either be used stand alone
68 or grouped into a module bank.
69
70 '#address-cells':
71 const: 1
72
73 '#size-cells':
74 const: 0
75
76 patternProperties:
77 "^led@[0-9a-f]+$":
78 type: object
79 $ref: common.yaml#
80 unevaluatedProperties: false
81
82 properties:
83 reg:
84 maxItems: 1
85
86 required:
87 - reg
88
89required:
90 - compatible
91 - reg
92
93additionalProperties: false
94
95examples:
96 - |
97 #include <dt-bindings/gpio/gpio.h>
98 #include <dt-bindings/leds/common.h>
99
100 i2c {
101 #address-cells = <1>;
102 #size-cells = <0>;
103
104 led-controller@14 {
105 compatible = "ti,lp5009";
106 reg = <0x14>;
107 #address-cells = <1>;
108 #size-cells = <0>;
109 enable-gpios = <&gpio1 16>;
110
111 multi-led@1 {
112 #address-cells = <1>;
113 #size-cells = <0>;
114 reg = <0x1>;
115 color = <LED_COLOR_ID_RGB>;
116 function = LED_FUNCTION_CHARGING;
117
118 led@0 {
119 reg = <0x0>;
120 color = <LED_COLOR_ID_RED>;
121 };
122
123 led@1 {
124 reg = <0x1>;
125 color = <LED_COLOR_ID_GREEN>;
126 };
127
128 led@2 {
129 reg = <0x2>;
130 color = <LED_COLOR_ID_BLUE>;
131 };
132 };
133
134 multi-led@3 {
135 #address-cells = <1>;
136 #size-cells = <0>;
137 reg = <0x3>, <0x4>, <0x5>;
138 color = <LED_COLOR_ID_RGB>;
139 function = LED_FUNCTION_STANDBY;
140
141 led@3 {
142 reg = <0x3>;
143 color = <LED_COLOR_ID_RED>;
144 };
145
146 led@4 {
147 reg = <0x4>;
148 color = <LED_COLOR_ID_GREEN>;
149 };
150
151 led@5 {
152 reg = <0x5>;
153 color = <LED_COLOR_ID_BLUE>;
154 };
155 };
156 };
157 };
158
159...