xref: /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/gpio/gpio-xlp.txt (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunNetlogic XLP Family GPIO
2*4882a593Smuzhiyun========================
3*4882a593Smuzhiyun
4*4882a593SmuzhiyunThis GPIO driver is used for following Netlogic XLP SoCs:
5*4882a593Smuzhiyun	XLP832, XLP316, XLP208, XLP980, XLP532
6*4882a593SmuzhiyunThis GPIO driver is also compatible with GPIO controller found on
7*4882a593SmuzhiyunBroadcom Vulcan ARM64.
8*4882a593Smuzhiyun
9*4882a593SmuzhiyunRequired properties:
10*4882a593Smuzhiyun-------------------
11*4882a593Smuzhiyun
12*4882a593Smuzhiyun- compatible: Should be one of the following:
13*4882a593Smuzhiyun  - "netlogic,xlp832-gpio": For Netlogic XLP832
14*4882a593Smuzhiyun  - "netlogic,xlp316-gpio": For Netlogic XLP316
15*4882a593Smuzhiyun  - "netlogic,xlp208-gpio": For Netlogic XLP208
16*4882a593Smuzhiyun  - "netlogic,xlp980-gpio": For Netlogic XLP980
17*4882a593Smuzhiyun  - "netlogic,xlp532-gpio": For Netlogic XLP532
18*4882a593Smuzhiyun  - "brcm,vulcan-gpio": For Broadcom Vulcan ARM64
19*4882a593Smuzhiyun- reg: Physical base address and length of the controller's registers.
20*4882a593Smuzhiyun- #gpio-cells: Should be two. The first cell is the pin number and the second
21*4882a593Smuzhiyun  cell is used to specify optional parameters (currently unused).
22*4882a593Smuzhiyun- gpio-controller: Marks the device node as a GPIO controller.
23*4882a593Smuzhiyun- nr-gpios: Number of GPIO pins supported by the controller.
24*4882a593Smuzhiyun- interrupt-cells: Should be two. The first cell is the GPIO Number. The
25*4882a593Smuzhiyun  second cell is used to specify flags. The following subset of flags is
26*4882a593Smuzhiyun  supported:
27*4882a593Smuzhiyun  - trigger type:
28*4882a593Smuzhiyun	1 = low to high edge triggered.
29*4882a593Smuzhiyun	2 = high to low edge triggered.
30*4882a593Smuzhiyun	4 = active high level-sensitive.
31*4882a593Smuzhiyun	8 = active low level-sensitive.
32*4882a593Smuzhiyun- interrupts: Interrupt number for this device.
33*4882a593Smuzhiyun- interrupt-controller: Identifies the node as an interrupt controller.
34*4882a593Smuzhiyun
35*4882a593SmuzhiyunExample:
36*4882a593Smuzhiyun
37*4882a593Smuzhiyun	gpio: xlp_gpio@34000 {
38*4882a593Smuzhiyun		compatible = "netlogic,xlp316-gpio";
39*4882a593Smuzhiyun		reg = <0 0x34100 0x1000
40*4882a593Smuzhiyun		       0 0x35100 0x1000>;
41*4882a593Smuzhiyun		#gpio-cells = <2>;
42*4882a593Smuzhiyun		gpio-controller;
43*4882a593Smuzhiyun		nr-gpios = <57>;
44*4882a593Smuzhiyun
45*4882a593Smuzhiyun		#interrupt-cells = <2>;
46*4882a593Smuzhiyun		interrupt-parent = <&pic>;
47*4882a593Smuzhiyun		interrupts = <39>;
48*4882a593Smuzhiyun		interrupt-controller;
49*4882a593Smuzhiyun	};
50