xref: /freebsd/sys/contrib/device-tree/Bindings/leds/nxp,pca953x.yaml (revision 5ca8e32633c4ffbbcd6762e5888b6a4ba0708c6c)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/leds/nxp,pca953x.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: NXP PCA9532 LED Dimmer
8
9maintainers:
10  - Riku Voipio <riku.voipio@iki.fi>
11
12description: |
13  The PCA9532 family is SMBus I/O expander optimized for dimming LEDs.
14  The PWM support 256 steps.
15
16  For more product information please see the link below:
17    https://www.nxp.com/docs/en/data-sheet/PCA9532.pdf
18
19properties:
20  compatible:
21    enum:
22      - nxp,pca9530
23      - nxp,pca9531
24      - nxp,pca9532
25      - nxp,pca9533
26
27  reg:
28    maxItems: 1
29
30  gpio-controller: true
31
32  '#gpio-cells':
33    const: 2
34
35patternProperties:
36  "^led-[0-9a-z]+$":
37    type: object
38    $ref: common.yaml#
39    unevaluatedProperties: false
40
41    properties:
42      type:
43        description: |
44          Output configuration, see include/dt-bindings/leds/leds-pca9532.h
45        $ref: /schemas/types.yaml#/definitions/uint32
46        default: 0
47        minimum: 0
48        maximum: 4
49
50required:
51  - compatible
52  - reg
53
54additionalProperties: false
55
56examples:
57  - |
58    #include <dt-bindings/leds/leds-pca9532.h>
59
60    i2c {
61        #address-cells = <1>;
62        #size-cells = <0>;
63
64        led-controller@62 {
65            compatible = "nxp,pca9533";
66            reg = <0x62>;
67
68            led-1 {
69                label = "pca:red:power";
70                type = <PCA9532_TYPE_LED>;
71            };
72
73            led-2 {
74                label = "pca:green:power";
75                type = <PCA9532_TYPE_LED>;
76            };
77
78            led-3 {
79                type = <PCA9532_TYPE_LED>;
80                default-state = "on";
81            };
82
83            led-4 {
84                type = <PCA9532_TYPE_LED>;
85                default-state = "keep";
86            };
87        };
88    };
89
90...
91