Merge tag 'for-v5.9' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power...
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / gpio / gpio-pca953x.txt
1 * NXP PCA953x I2C GPIO multiplexer
2
3 Required properties:
4  - compatible: Has to contain one of the following:
5         nxp,pca6416
6         nxp,pca9505
7         nxp,pca9534
8         nxp,pca9535
9         nxp,pca9536
10         nxp,pca9537
11         nxp,pca9538
12         nxp,pca9539
13         nxp,pca9554
14         nxp,pca9555
15         nxp,pca9556
16         nxp,pca9557
17         nxp,pca9574
18         nxp,pca9575
19         nxp,pca9698
20         nxp,pcal6416
21         nxp,pcal6524
22         nxp,pcal9535
23         nxp,pcal9555a
24         maxim,max7310
25         maxim,max7312
26         maxim,max7313
27         maxim,max7315
28         ti,pca6107
29         ti,pca9536
30         ti,tca6408
31         ti,tca6416
32         ti,tca6424
33         ti,tca9539
34         ti,tca9554
35         onnn,cat9554
36         onnn,pca9654
37         exar,xra1202
38  - gpio-controller: if used as gpio expander.
39  - #gpio-cells: if used as gpio expander.
40  - interrupt-controller: if to be used as interrupt expander.
41  - #interrupt-cells: if to be used as interrupt expander.
42
43 Optional properties:
44  - interrupts: interrupt specifier for the device's interrupt output.
45  - reset-gpios: GPIO specification for the RESET input. This is an
46                 active low signal to the PCA953x.
47  - vcc-supply:  power supply regulator.
48
49 Example:
50
51
52         gpio@20 {
53                 compatible = "nxp,pca9505";
54                 reg = <0x20>;
55                 pinctrl-names = "default";
56                 pinctrl-0 = <&pinctrl_pca9505>;
57                 gpio-controller;
58                 #gpio-cells = <2>;
59                 interrupt-parent = <&gpio3>;
60                 interrupts = <23 IRQ_TYPE_LEVEL_LOW>;
61         };
62
63
64 Example with Interrupts:
65
66
67         gpio99: gpio@22 {
68                 compatible = "nxp,pcal6524";
69                 reg = <0x22>;
70                 interrupt-parent = <&gpio6>;
71                 interrupts = <1 IRQ_TYPE_EDGE_FALLING>; /* gpio6_161 */
72                 interrupt-controller;
73                 #interrupt-cells = <2>;
74                 vcc-supply = <&vdds_1v8_main>;
75                 gpio-controller;
76                 #gpio-cells = <2>;
77                 gpio-line-names =
78                         "hdmi-ct-hpd", "hdmi.ls-oe", "p02", "p03", "vibra", "fault2", "p06", "p07",
79                         "en-usb", "en-host1", "en-host2", "chg-int", "p14", "p15", "mic-int", "en-modem",
80                         "shdn-hs-amp", "chg-status+red", "green", "blue", "en-esata", "fault1", "p26", "p27";
81         };
82
83         ts3a227@3b {
84                 compatible = "ti,ts3a227e";
85                 reg = <0x3b>;
86                 interrupt-parent = <&gpio99>;
87                 interrupts = <14 IRQ_TYPE_EDGE_RISING>;
88                 ti,micbias = <0>;       /* 2.1V */
89         };
90