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