xref: /linux/Documentation/devicetree/bindings/leds/adi,ltc3220.yaml (revision 67f8bc848ee31831336bd478e57d2f993551902e)
1*3c28d9d0SEdelweise Escala# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*3c28d9d0SEdelweise Escala%YAML 1.2
3*3c28d9d0SEdelweise Escala---
4*3c28d9d0SEdelweise Escala$id: http://devicetree.org/schemas/leds/adi,ltc3220.yaml#
5*3c28d9d0SEdelweise Escala$schema: http://devicetree.org/meta-schemas/core.yaml#
6*3c28d9d0SEdelweise Escala
7*3c28d9d0SEdelweise Escalatitle: Analog Devices LTC3220 LED Driver
8*3c28d9d0SEdelweise Escala
9*3c28d9d0SEdelweise Escalamaintainers:
10*3c28d9d0SEdelweise Escala  - Edelweise Escala <edelweise.escala@analog.com>
11*3c28d9d0SEdelweise Escala
12*3c28d9d0SEdelweise Escaladescription: >
13*3c28d9d0SEdelweise Escala  The LTC3220 is a multi-display LED driver, which contains a high-efficiency,
14*3c28d9d0SEdelweise Escala  low-noise charge pump to provide power to up to 18 LED current sources.
15*3c28d9d0SEdelweise Escala  The LEDs are individually configurable to 64-step linear brightness control,
16*3c28d9d0SEdelweise Escala  blinking and gradation control via 2-wire I2C interface.
17*3c28d9d0SEdelweise Escala
18*3c28d9d0SEdelweise Escala  For more product information please see the link below
19*3c28d9d0SEdelweise Escala    https://www.analog.com/en/products/ltc3220.html
20*3c28d9d0SEdelweise Escala
21*3c28d9d0SEdelweise Escalaproperties:
22*3c28d9d0SEdelweise Escala  compatible:
23*3c28d9d0SEdelweise Escala    const: adi,ltc3220
24*3c28d9d0SEdelweise Escala
25*3c28d9d0SEdelweise Escala  reg:
26*3c28d9d0SEdelweise Escala    maxItems: 1
27*3c28d9d0SEdelweise Escala
28*3c28d9d0SEdelweise Escala  '#address-cells':
29*3c28d9d0SEdelweise Escala    const: 1
30*3c28d9d0SEdelweise Escala
31*3c28d9d0SEdelweise Escala  '#size-cells':
32*3c28d9d0SEdelweise Escala    const: 0
33*3c28d9d0SEdelweise Escala
34*3c28d9d0SEdelweise Escala  reset-gpios:
35*3c28d9d0SEdelweise Escala    maxItems: 1
36*3c28d9d0SEdelweise Escala
37*3c28d9d0SEdelweise EscalapatternProperties:
38*3c28d9d0SEdelweise Escala  '^led@([1-9a-f]|1[0-2])$':
39*3c28d9d0SEdelweise Escala    type: object
40*3c28d9d0SEdelweise Escala    $ref: /schemas/leds/common.yaml#
41*3c28d9d0SEdelweise Escala    unevaluatedProperties: false
42*3c28d9d0SEdelweise Escala    properties:
43*3c28d9d0SEdelweise Escala      reg:
44*3c28d9d0SEdelweise Escala        description:
45*3c28d9d0SEdelweise Escala          Output channel for the LED (1-18 maps to LED outputs D1-D18).
46*3c28d9d0SEdelweise Escala          Unit-address must be in hexadecimal (1-12 hex = 1-18 decimal).
47*3c28d9d0SEdelweise Escala          For aggregated LED control, define only one LED node with reg = <0x1>
48*3c28d9d0SEdelweise Escala          and use led-sources to list all controlled outputs. Only reg 1 should
49*3c28d9d0SEdelweise Escala          be present when using led-sources.
50*3c28d9d0SEdelweise Escala        items:
51*3c28d9d0SEdelweise Escala          - minimum: 1
52*3c28d9d0SEdelweise Escala            maximum: 18
53*3c28d9d0SEdelweise Escala
54*3c28d9d0SEdelweise Escala    required:
55*3c28d9d0SEdelweise Escala      - reg
56*3c28d9d0SEdelweise Escala
57*3c28d9d0SEdelweise Escala    if:
58*3c28d9d0SEdelweise Escala      required:
59*3c28d9d0SEdelweise Escala        - led-sources
60*3c28d9d0SEdelweise Escala    then:
61*3c28d9d0SEdelweise Escala      properties:
62*3c28d9d0SEdelweise Escala        reg:
63*3c28d9d0SEdelweise Escala          items:
64*3c28d9d0SEdelweise Escala            - const: 1
65*3c28d9d0SEdelweise Escala
66*3c28d9d0SEdelweise Escalarequired:
67*3c28d9d0SEdelweise Escala  - compatible
68*3c28d9d0SEdelweise Escala  - reg
69*3c28d9d0SEdelweise Escala  - '#address-cells'
70*3c28d9d0SEdelweise Escala  - '#size-cells'
71*3c28d9d0SEdelweise Escala
72*3c28d9d0SEdelweise EscalaadditionalProperties: false
73*3c28d9d0SEdelweise Escala
74*3c28d9d0SEdelweise Escalaexamples:
75*3c28d9d0SEdelweise Escala  - |
76*3c28d9d0SEdelweise Escala    // Independent LEDs
77*3c28d9d0SEdelweise Escala    #include <dt-bindings/gpio/gpio.h>
78*3c28d9d0SEdelweise Escala    #include <dt-bindings/leds/common.h>
79*3c28d9d0SEdelweise Escala
80*3c28d9d0SEdelweise Escala    i2c {
81*3c28d9d0SEdelweise Escala        #address-cells = <1>;
82*3c28d9d0SEdelweise Escala        #size-cells = <0>;
83*3c28d9d0SEdelweise Escala
84*3c28d9d0SEdelweise Escala        led-controller@1c {
85*3c28d9d0SEdelweise Escala            compatible = "adi,ltc3220";
86*3c28d9d0SEdelweise Escala            reg = <0x1c>;
87*3c28d9d0SEdelweise Escala            #address-cells = <1>;
88*3c28d9d0SEdelweise Escala            #size-cells = <0>;
89*3c28d9d0SEdelweise Escala            reset-gpios = <&gpio 17 GPIO_ACTIVE_LOW>;
90*3c28d9d0SEdelweise Escala
91*3c28d9d0SEdelweise Escala            led@1 {
92*3c28d9d0SEdelweise Escala                reg = <0x1>;
93*3c28d9d0SEdelweise Escala                function = LED_FUNCTION_INDICATOR;
94*3c28d9d0SEdelweise Escala                function-enumerator = <1>;
95*3c28d9d0SEdelweise Escala            };
96*3c28d9d0SEdelweise Escala
97*3c28d9d0SEdelweise Escala            led@2 {
98*3c28d9d0SEdelweise Escala                reg = <0x2>;
99*3c28d9d0SEdelweise Escala                function = LED_FUNCTION_INDICATOR;
100*3c28d9d0SEdelweise Escala                function-enumerator = <2>;
101*3c28d9d0SEdelweise Escala            };
102*3c28d9d0SEdelweise Escala
103*3c28d9d0SEdelweise Escala            led@3 {
104*3c28d9d0SEdelweise Escala                reg = <0x3>;
105*3c28d9d0SEdelweise Escala                function = LED_FUNCTION_INDICATOR;
106*3c28d9d0SEdelweise Escala                function-enumerator = <3>;
107*3c28d9d0SEdelweise Escala            };
108*3c28d9d0SEdelweise Escala        };
109*3c28d9d0SEdelweise Escala    };
110*3c28d9d0SEdelweise Escala
111*3c28d9d0SEdelweise Escala  - |
112*3c28d9d0SEdelweise Escala    // Aggregated LED
113*3c28d9d0SEdelweise Escala    #include <dt-bindings/leds/common.h>
114*3c28d9d0SEdelweise Escala
115*3c28d9d0SEdelweise Escala    i2c {
116*3c28d9d0SEdelweise Escala        #address-cells = <1>;
117*3c28d9d0SEdelweise Escala        #size-cells = <0>;
118*3c28d9d0SEdelweise Escala
119*3c28d9d0SEdelweise Escala        led-controller@1c {
120*3c28d9d0SEdelweise Escala            compatible = "adi,ltc3220";
121*3c28d9d0SEdelweise Escala            reg = <0x1c>;
122*3c28d9d0SEdelweise Escala            #address-cells = <1>;
123*3c28d9d0SEdelweise Escala            #size-cells = <0>;
124*3c28d9d0SEdelweise Escala
125*3c28d9d0SEdelweise Escala            led@1 {
126*3c28d9d0SEdelweise Escala                reg = <0x1>;
127*3c28d9d0SEdelweise Escala                led-sources = <0x1 0x2 0x3 0x4 0x5 0x6 0x7 0x8 0x9 0xa 0xb 0xc 0xd 0xe 0xf 0x10 0x11 0x12>;
128*3c28d9d0SEdelweise Escala                function = LED_FUNCTION_BACKLIGHT;
129*3c28d9d0SEdelweise Escala            };
130*3c28d9d0SEdelweise Escala        };
131*3c28d9d0SEdelweise Escala    };
132*3c28d9d0SEdelweise Escala
133*3c28d9d0SEdelweise Escala...
134