xref: /freebsd/sys/contrib/device-tree/Bindings/gpio/gpio-pca953x.txt (revision 6be3386466ab79a84b48429ae66244f21526d3df)
1* NXP PCA953x I2C GPIO multiplexer
2
3Required 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
43Optional 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
49Example:
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
64Example 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
91