GNU Linux-libre 6.8.9-gnu
[releases.git] / Documentation / devicetree / bindings / leds / leds-aw2013.yaml
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-aw2013.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: AWINIC AW2013 3-channel LED Driver
8
9 maintainers:
10   - Nikita Travkin <nikitos.tr@gmail.com>
11
12 description: |
13   The AW2013 is a 3-channel LED driver with I2C interface. It can control
14   LED brightness with PWM output.
15
16 properties:
17   compatible:
18     const: awinic,aw2013
19
20   reg:
21     maxItems: 1
22
23   interrupts:
24     maxItems: 1
25     description: Open-drain, low active interrupt pin "INTN".
26       Used to report completion of operations (power up, LED breath effects).
27
28   vcc-supply:
29     description: Regulator providing power to the "VCC" pin.
30
31   vio-supply:
32     description: Regulator providing power for pull-up of the I/O lines.
33       "VIO1" in the typical application circuit example of the datasheet.
34       Note that this regulator does not directly connect to AW2013, but is
35       needed for the correct operation of the interrupt and I2C lines.
36
37   "#address-cells":
38     const: 1
39
40   "#size-cells":
41     const: 0
42
43 patternProperties:
44   "^led@[0-2]$":
45     type: object
46     $ref: common.yaml#
47     unevaluatedProperties: false
48
49     properties:
50       reg:
51         description: Index of the LED.
52         minimum: 0
53         maximum: 2
54
55 required:
56   - compatible
57   - reg
58   - "#address-cells"
59   - "#size-cells"
60
61 additionalProperties: false
62
63 examples:
64   - |
65     #include <dt-bindings/gpio/gpio.h>
66     #include <dt-bindings/interrupt-controller/irq.h>
67     #include <dt-bindings/leds/common.h>
68
69     i2c {
70         #address-cells = <1>;
71         #size-cells = <0>;
72
73         led-controller@45 {
74             compatible = "awinic,aw2013";
75             reg = <0x45>;
76             interrupts = <42 IRQ_TYPE_LEVEL_LOW>;
77             #address-cells = <1>;
78             #size-cells = <0>;
79
80             vcc-supply = <&pm8916_l17>;
81
82             led@0 {
83                 reg = <0>;
84                 led-max-microamp = <5000>;
85                 function = LED_FUNCTION_INDICATOR;
86                 color = <LED_COLOR_ID_RED>;
87             };
88
89             led@1 {
90                 reg = <1>;
91                 led-max-microamp = <5000>;
92                 function = LED_FUNCTION_INDICATOR;
93                 color = <LED_COLOR_ID_GREEN>;
94             };
95
96             led@2 {
97                 reg = <2>;
98                 led-max-microamp = <5000>;
99                 function = LED_FUNCTION_INDICATOR;
100                 color = <LED_COLOR_ID_BLUE>;
101             };
102         };
103     };
104 ...