xref: /linux/Documentation/devicetree/bindings/leds/nxp,pca995x.yaml (revision 3a39d672e7f48b8d6b91a09afa4b55352773b4b5)
1a4789089SMarek Vasut# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2a4789089SMarek Vasut%YAML 1.2
3a4789089SMarek Vasut---
4a4789089SMarek Vasut$id: http://devicetree.org/schemas/leds/nxp,pca995x.yaml#
5a4789089SMarek Vasut$schema: http://devicetree.org/meta-schemas/core.yaml#
6a4789089SMarek Vasut
7a4789089SMarek Vasuttitle: NXP PCA995x LED controllers
8a4789089SMarek Vasut
9a4789089SMarek Vasutmaintainers:
10a4789089SMarek Vasut  - Isai Gaspar <isaiezequiel.gaspar@nxp.com>
11a4789089SMarek Vasut  - Marek Vasut <marex@denx.de>
12a4789089SMarek Vasut
13a4789089SMarek Vasutdescription:
14*7f5e1906SPieterjan Camerlynck  The NXP PCA995x family are programmable LED controllers connected via I2C
15*7f5e1906SPieterjan Camerlynck  that can drive separate lines. Each of them can be individually switched
16a4789089SMarek Vasut  on and off, and brightness can be controlled via individual PWM.
17a4789089SMarek Vasut
18a4789089SMarek Vasut  Datasheets are available at
19a4789089SMarek Vasut  https://www.nxp.com/docs/en/data-sheet/PCA9952_PCA9955.pdf
20a4789089SMarek Vasut  https://www.nxp.com/docs/en/data-sheet/PCA9955B.pdf
21*7f5e1906SPieterjan Camerlynck  https://www.nxp.com/docs/en/data-sheet/PCA9956B.pdf
22a4789089SMarek Vasut
23a4789089SMarek Vasutproperties:
24a4789089SMarek Vasut  compatible:
25a4789089SMarek Vasut    enum:
26a4789089SMarek Vasut      - nxp,pca9952
27a4789089SMarek Vasut      - nxp,pca9955b
28*7f5e1906SPieterjan Camerlynck      - nxp,pca9956b
29a4789089SMarek Vasut
30a4789089SMarek Vasut  reg:
31a4789089SMarek Vasut    maxItems: 1
32a4789089SMarek Vasut
33a4789089SMarek Vasut  "#address-cells":
34a4789089SMarek Vasut    const: 1
35a4789089SMarek Vasut
36a4789089SMarek Vasut  "#size-cells":
37a4789089SMarek Vasut    const: 0
38a4789089SMarek Vasut
39a4789089SMarek VasutpatternProperties:
40a4789089SMarek Vasut  "^led@[0-9a-f]+$":
41a4789089SMarek Vasut    type: object
42a4789089SMarek Vasut    $ref: common.yaml#
43a4789089SMarek Vasut    unevaluatedProperties: false
44a4789089SMarek Vasut
45a4789089SMarek Vasut    properties:
46a4789089SMarek Vasut      reg:
47a4789089SMarek Vasut        minimum: 0
48a4789089SMarek Vasut        maximum: 15
49a4789089SMarek Vasut
50a4789089SMarek Vasut    required:
51a4789089SMarek Vasut      - reg
52a4789089SMarek Vasut
53a4789089SMarek VasutadditionalProperties: false
54a4789089SMarek Vasut
55a4789089SMarek Vasutexamples:
56a4789089SMarek Vasut  - |
57a4789089SMarek Vasut    #include <dt-bindings/leds/common.h>
58a4789089SMarek Vasut
59a4789089SMarek Vasut    i2c {
60a4789089SMarek Vasut        #address-cells = <1>;
61a4789089SMarek Vasut        #size-cells = <0>;
62a4789089SMarek Vasut
63a4789089SMarek Vasut        led-controller@1 {
64a4789089SMarek Vasut            compatible = "nxp,pca9955b";
65a4789089SMarek Vasut            reg = <0x01>;
66a4789089SMarek Vasut            #address-cells = <1>;
67a4789089SMarek Vasut            #size-cells = <0>;
68a4789089SMarek Vasut
69a4789089SMarek Vasut            led@0 {
70a4789089SMarek Vasut                reg = <0x0>;
71a4789089SMarek Vasut                color = <LED_COLOR_ID_RED>;
72a4789089SMarek Vasut                function = LED_FUNCTION_POWER;
73a4789089SMarek Vasut            };
74a4789089SMarek Vasut
75a4789089SMarek Vasut            led@2 {
76a4789089SMarek Vasut                reg = <0x2>;
77a4789089SMarek Vasut                color = <LED_COLOR_ID_WHITE>;
78a4789089SMarek Vasut                function = LED_FUNCTION_STATUS;
79a4789089SMarek Vasut            };
80a4789089SMarek Vasut        };
81a4789089SMarek Vasut    };
82a4789089SMarek Vasut
83a4789089SMarek Vasut...
84