1*84943d6fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*84943d6fSEmmanuel Vadot%YAML 1.2
3*84943d6fSEmmanuel Vadot---
4*84943d6fSEmmanuel Vadot$id: http://devicetree.org/schemas/leds/kinetic,ktd202x.yaml#
5*84943d6fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*84943d6fSEmmanuel Vadot
7*84943d6fSEmmanuel Vadottitle: Kinetic KTD2026/7 RGB/White LED Driver
8*84943d6fSEmmanuel Vadot
9*84943d6fSEmmanuel Vadotmaintainers:
10*84943d6fSEmmanuel Vadot  - André Apitzsch <git@apitzsch.eu>
11*84943d6fSEmmanuel Vadot
12*84943d6fSEmmanuel Vadotdescription: |
13*84943d6fSEmmanuel Vadot  The KTD2026/7 is a RGB/White LED driver with I2C interface.
14*84943d6fSEmmanuel Vadot
15*84943d6fSEmmanuel Vadot  The data sheet can be found at:
16*84943d6fSEmmanuel Vadot    https://www.kinet-ic.com/uploads/KTD2026-7-04h.pdf
17*84943d6fSEmmanuel Vadot
18*84943d6fSEmmanuel Vadotproperties:
19*84943d6fSEmmanuel Vadot  compatible:
20*84943d6fSEmmanuel Vadot    enum:
21*84943d6fSEmmanuel Vadot      - kinetic,ktd2026
22*84943d6fSEmmanuel Vadot      - kinetic,ktd2027
23*84943d6fSEmmanuel Vadot
24*84943d6fSEmmanuel Vadot  reg:
25*84943d6fSEmmanuel Vadot    maxItems: 1
26*84943d6fSEmmanuel Vadot
27*84943d6fSEmmanuel Vadot  vin-supply:
28*84943d6fSEmmanuel Vadot    description: Regulator providing power to the "VIN" pin.
29*84943d6fSEmmanuel Vadot
30*84943d6fSEmmanuel Vadot  vio-supply:
31*84943d6fSEmmanuel Vadot    description: Regulator providing power for pull-up of the I/O lines.
32*84943d6fSEmmanuel Vadot      Note that this regulator does not directly connect to KTD2026, but is
33*84943d6fSEmmanuel Vadot      needed for the correct operation of the status ("ST") and I2C lines.
34*84943d6fSEmmanuel Vadot
35*84943d6fSEmmanuel Vadot  "#address-cells":
36*84943d6fSEmmanuel Vadot    const: 1
37*84943d6fSEmmanuel Vadot
38*84943d6fSEmmanuel Vadot  "#size-cells":
39*84943d6fSEmmanuel Vadot    const: 0
40*84943d6fSEmmanuel Vadot
41*84943d6fSEmmanuel Vadot  multi-led:
42*84943d6fSEmmanuel Vadot    type: object
43*84943d6fSEmmanuel Vadot    $ref: leds-class-multicolor.yaml#
44*84943d6fSEmmanuel Vadot    unevaluatedProperties: false
45*84943d6fSEmmanuel Vadot
46*84943d6fSEmmanuel Vadot    properties:
47*84943d6fSEmmanuel Vadot      "#address-cells":
48*84943d6fSEmmanuel Vadot        const: 1
49*84943d6fSEmmanuel Vadot
50*84943d6fSEmmanuel Vadot      "#size-cells":
51*84943d6fSEmmanuel Vadot        const: 0
52*84943d6fSEmmanuel Vadot
53*84943d6fSEmmanuel Vadot    patternProperties:
54*84943d6fSEmmanuel Vadot      "^led@[0-3]$":
55*84943d6fSEmmanuel Vadot        type: object
56*84943d6fSEmmanuel Vadot        $ref: common.yaml#
57*84943d6fSEmmanuel Vadot        unevaluatedProperties: false
58*84943d6fSEmmanuel Vadot
59*84943d6fSEmmanuel Vadot        properties:
60*84943d6fSEmmanuel Vadot          reg:
61*84943d6fSEmmanuel Vadot            description: Index of the LED.
62*84943d6fSEmmanuel Vadot            minimum: 0
63*84943d6fSEmmanuel Vadot            maximum: 3
64*84943d6fSEmmanuel Vadot
65*84943d6fSEmmanuel Vadot        required:
66*84943d6fSEmmanuel Vadot          - reg
67*84943d6fSEmmanuel Vadot          - color
68*84943d6fSEmmanuel Vadot
69*84943d6fSEmmanuel Vadot    required:
70*84943d6fSEmmanuel Vadot      - "#address-cells"
71*84943d6fSEmmanuel Vadot      - "#size-cells"
72*84943d6fSEmmanuel Vadot
73*84943d6fSEmmanuel VadotpatternProperties:
74*84943d6fSEmmanuel Vadot  "^led@[0-3]$":
75*84943d6fSEmmanuel Vadot    type: object
76*84943d6fSEmmanuel Vadot    $ref: common.yaml#
77*84943d6fSEmmanuel Vadot    unevaluatedProperties: false
78*84943d6fSEmmanuel Vadot
79*84943d6fSEmmanuel Vadot    properties:
80*84943d6fSEmmanuel Vadot      reg:
81*84943d6fSEmmanuel Vadot        description: Index of the LED.
82*84943d6fSEmmanuel Vadot        minimum: 0
83*84943d6fSEmmanuel Vadot        maximum: 3
84*84943d6fSEmmanuel Vadot
85*84943d6fSEmmanuel Vadot    required:
86*84943d6fSEmmanuel Vadot      - reg
87*84943d6fSEmmanuel Vadot
88*84943d6fSEmmanuel Vadotrequired:
89*84943d6fSEmmanuel Vadot  - compatible
90*84943d6fSEmmanuel Vadot  - reg
91*84943d6fSEmmanuel Vadot  - "#address-cells"
92*84943d6fSEmmanuel Vadot  - "#size-cells"
93*84943d6fSEmmanuel Vadot
94*84943d6fSEmmanuel VadotadditionalProperties: false
95*84943d6fSEmmanuel Vadot
96*84943d6fSEmmanuel Vadotexamples:
97*84943d6fSEmmanuel Vadot  - |
98*84943d6fSEmmanuel Vadot    #include <dt-bindings/leds/common.h>
99*84943d6fSEmmanuel Vadot
100*84943d6fSEmmanuel Vadot    i2c {
101*84943d6fSEmmanuel Vadot        #address-cells = <1>;
102*84943d6fSEmmanuel Vadot        #size-cells = <0>;
103*84943d6fSEmmanuel Vadot
104*84943d6fSEmmanuel Vadot        led-controller@30 {
105*84943d6fSEmmanuel Vadot            compatible = "kinetic,ktd2026";
106*84943d6fSEmmanuel Vadot            reg = <0x30>;
107*84943d6fSEmmanuel Vadot            #address-cells = <1>;
108*84943d6fSEmmanuel Vadot            #size-cells = <0>;
109*84943d6fSEmmanuel Vadot
110*84943d6fSEmmanuel Vadot            vin-supply = <&pm8916_l17>;
111*84943d6fSEmmanuel Vadot            vio-supply = <&pm8916_l6>;
112*84943d6fSEmmanuel Vadot
113*84943d6fSEmmanuel Vadot            led@0 {
114*84943d6fSEmmanuel Vadot                reg = <0>;
115*84943d6fSEmmanuel Vadot                function = LED_FUNCTION_STATUS;
116*84943d6fSEmmanuel Vadot                color = <LED_COLOR_ID_RED>;
117*84943d6fSEmmanuel Vadot            };
118*84943d6fSEmmanuel Vadot
119*84943d6fSEmmanuel Vadot            led@1 {
120*84943d6fSEmmanuel Vadot                reg = <1>;
121*84943d6fSEmmanuel Vadot                function = LED_FUNCTION_STATUS;
122*84943d6fSEmmanuel Vadot                color = <LED_COLOR_ID_GREEN>;
123*84943d6fSEmmanuel Vadot            };
124*84943d6fSEmmanuel Vadot
125*84943d6fSEmmanuel Vadot            led@2 {
126*84943d6fSEmmanuel Vadot                reg = <2>;
127*84943d6fSEmmanuel Vadot                function = LED_FUNCTION_STATUS;
128*84943d6fSEmmanuel Vadot                color = <LED_COLOR_ID_BLUE>;
129*84943d6fSEmmanuel Vadot            };
130*84943d6fSEmmanuel Vadot        };
131*84943d6fSEmmanuel Vadot    };
132*84943d6fSEmmanuel Vadot  - |
133*84943d6fSEmmanuel Vadot    #include <dt-bindings/leds/common.h>
134*84943d6fSEmmanuel Vadot
135*84943d6fSEmmanuel Vadot    i2c {
136*84943d6fSEmmanuel Vadot        #address-cells = <1>;
137*84943d6fSEmmanuel Vadot        #size-cells = <0>;
138*84943d6fSEmmanuel Vadot
139*84943d6fSEmmanuel Vadot        led-controller@30 {
140*84943d6fSEmmanuel Vadot            compatible = "kinetic,ktd2026";
141*84943d6fSEmmanuel Vadot            reg = <0x30>;
142*84943d6fSEmmanuel Vadot            #address-cells = <1>;
143*84943d6fSEmmanuel Vadot            #size-cells = <0>;
144*84943d6fSEmmanuel Vadot
145*84943d6fSEmmanuel Vadot            vin-supply = <&pm8916_l17>;
146*84943d6fSEmmanuel Vadot            vio-supply = <&pm8916_l6>;
147*84943d6fSEmmanuel Vadot
148*84943d6fSEmmanuel Vadot            multi-led {
149*84943d6fSEmmanuel Vadot                color = <LED_COLOR_ID_RGB>;
150*84943d6fSEmmanuel Vadot                function = LED_FUNCTION_STATUS;
151*84943d6fSEmmanuel Vadot
152*84943d6fSEmmanuel Vadot                #address-cells = <1>;
153*84943d6fSEmmanuel Vadot                #size-cells = <0>;
154*84943d6fSEmmanuel Vadot
155*84943d6fSEmmanuel Vadot                led@0 {
156*84943d6fSEmmanuel Vadot                    reg = <0>;
157*84943d6fSEmmanuel Vadot                    color = <LED_COLOR_ID_RED>;
158*84943d6fSEmmanuel Vadot                };
159*84943d6fSEmmanuel Vadot
160*84943d6fSEmmanuel Vadot                led@1 {
161*84943d6fSEmmanuel Vadot                    reg = <1>;
162*84943d6fSEmmanuel Vadot                    color = <LED_COLOR_ID_GREEN>;
163*84943d6fSEmmanuel Vadot                };
164*84943d6fSEmmanuel Vadot
165*84943d6fSEmmanuel Vadot                led@2 {
166*84943d6fSEmmanuel Vadot                    reg = <2>;
167*84943d6fSEmmanuel Vadot                    color = <LED_COLOR_ID_BLUE>;
168*84943d6fSEmmanuel Vadot                };
169*84943d6fSEmmanuel Vadot            };
170*84943d6fSEmmanuel Vadot        };
171*84943d6fSEmmanuel Vadot    };
172