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