xref: /linux/Documentation/devicetree/bindings/leds/leds-mt6360.yaml (revision 77e67d5daaf155f7d0f99f4e797c4842169ec19e)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/leds/leds-mt6360.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: LED driver for MT6360 PMIC from MediaTek Integrated.
8
9maintainers:
10  - Gene Chen <gene_chen@richtek.com>
11
12description: |
13  This module is part of the MT6360 MFD device.
14  see Documentation/devicetree/bindings/mfd/mediatek,mt6360.yaml
15  Add MT6360 LED driver include 2-channel Flash LED with torch/strobe mode,
16  and 4-channel RGB LED support Register/Flash/Breath Mode
17
18properties:
19  compatible:
20    const: mediatek,mt6360-led
21
22  "#address-cells":
23    const: 1
24
25  "#size-cells":
26    const: 0
27
28patternProperties:
29  "^multi-led@[0-5]$":
30    type: object
31    $ref: leds-class-multicolor.yaml#
32    unevaluatedProperties: false
33
34    properties:
35      reg:
36        description: Index of the LED.
37        enum:
38          - 0 # LED output ISINK1
39          - 1 # LED output ISINK2
40          - 2 # LED output ISINK3
41          - 3 # LED output ISINKML
42          - 4 # LED output FLASH1
43          - 5 # LED output FLASH2
44
45      "#address-cells":
46        const: 1
47
48      "#size-cells":
49        const: 0
50
51    patternProperties:
52      "^led@[0-2]$":
53        type: object
54        $ref: common.yaml#
55        unevaluatedProperties: false
56
57        properties:
58          reg:
59            enum: [0, 1, 2]
60
61        required:
62          - reg
63          - color
64
65    required:
66      - reg
67      - "#address-cells"
68      - "#size-cells"
69
70  "^led@[0-5]$":
71    type: object
72    $ref: common.yaml#
73    unevaluatedProperties: false
74    description:
75      Properties for a single LED.
76
77    properties:
78      reg:
79        enum: [0, 1, 2, 3, 4, 5]
80
81required:
82  - compatible
83  - "#address-cells"
84  - "#size-cells"
85
86additionalProperties: false
87
88examples:
89  - |
90    #include <dt-bindings/leds/common.h>
91    led-controller {
92        compatible = "mediatek,mt6360-led";
93        #address-cells = <1>;
94        #size-cells = <0>;
95
96        multi-led@0 {
97            reg = <0>;
98            function = LED_FUNCTION_INDICATOR;
99            color = <LED_COLOR_ID_RGB>;
100            led-max-microamp = <24000>;
101            #address-cells = <1>;
102            #size-cells = <0>;
103            led@0 {
104                reg = <0>;
105                color = <LED_COLOR_ID_RED>;
106            };
107            led@1 {
108                reg = <1>;
109                color = <LED_COLOR_ID_GREEN>;
110            };
111            led@2 {
112                reg = <2>;
113                color = <LED_COLOR_ID_BLUE>;
114            };
115        };
116        led@3 {
117            reg = <3>;
118            function = LED_FUNCTION_INDICATOR;
119            color = <LED_COLOR_ID_WHITE>;
120            led-max-microamp = <150000>;
121        };
122        led@4 {
123            reg = <4>;
124            function = LED_FUNCTION_FLASH;
125            color = <LED_COLOR_ID_WHITE>;
126            function-enumerator = <1>;
127            led-max-microamp = <200000>;
128            flash-max-microamp = <500000>;
129            flash-max-timeout-us = <1024000>;
130        };
131        led@5 {
132            reg = <5>;
133            function = LED_FUNCTION_FLASH;
134            color = <LED_COLOR_ID_WHITE>;
135            function-enumerator = <2>;
136            led-max-microamp = <200000>;
137            flash-max-microamp = <500000>;
138            flash-max-timeout-us = <1024000>;
139        };
140    };
141
142  - |
143    led-controller {
144        compatible = "mediatek,mt6360-led";
145        #address-cells = <1>;
146        #size-cells = <0>;
147
148        led@0 {
149            reg = <0>;
150            function = LED_FUNCTION_INDICATOR;
151            color = <LED_COLOR_ID_RED>;
152            led-max-microamp = <24000>;
153        };
154        led@1 {
155            reg = <1>;
156            function = LED_FUNCTION_INDICATOR;
157            color = <LED_COLOR_ID_GREEN>;
158            led-max-microamp = <24000>;
159        };
160        led@2 {
161            reg = <2>;
162            function = LED_FUNCTION_INDICATOR;
163            color = <LED_COLOR_ID_BLUE>;
164            led-max-microamp = <24000>;
165        };
166        led@3 {
167            reg = <3>;
168            function = LED_FUNCTION_INDICATOR;
169            color = <LED_COLOR_ID_WHITE>;
170            led-max-microamp = <150000>;
171        };
172        led@4 {
173            reg = <4>;
174            function = LED_FUNCTION_FLASH;
175            color = <LED_COLOR_ID_WHITE>;
176            function-enumerator = <1>;
177            led-max-microamp = <200000>;
178            flash-max-microamp = <500000>;
179            flash-max-timeout-us = <1024000>;
180        };
181        led@5 {
182            reg = <5>;
183            function = LED_FUNCTION_FLASH;
184            color = <LED_COLOR_ID_WHITE>;
185            function-enumerator = <2>;
186            led-max-microamp = <200000>;
187            flash-max-microamp = <500000>;
188            flash-max-timeout-us = <1024000>;
189        };
190    };
191...
192