summaryrefslogtreecommitdiffstats
path: root/Documentation/devicetree/bindings/gpio/mrvl-gpio.txt
blob: 30fd2201b3d4cfc8fbc3fe7b1f7a39854c1d3d7e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
* Marvell PXA GPIO controller

Required properties:
- compatible : Should be "intel,pxa25x-gpio", "intel,pxa26x-gpio",
		"intel,pxa27x-gpio", "intel,pxa3xx-gpio",
		"marvell,pxa93x-gpio", "marvell,mmp-gpio",
		"marvell,mmp2-gpio" or marvell,pxa1928-gpio.
- reg : Address and length of the register set for the device
- interrupts : Should be the port interrupt shared by all gpio pins.
  There're three gpio interrupts in arch-pxa, and they're gpio0,
  gpio1 and gpio_mux. There're only one gpio interrupt in arch-mmp,
  gpio_mux.
- interrupt-names : Should be the names of irq resources. Each interrupt
  uses its own interrupt name, so there should be as many interrupt names
  as referenced interrupts.
- interrupt-controller : Identifies the node as an interrupt controller.
- #interrupt-cells: Specifies the number of cells needed to encode an
  interrupt source.
- gpio-controller : Marks the device node as a gpio controller.
- #gpio-cells : Should be two.  The first cell is the pin number and
  the second cell is used to specify flags. See gpio.txt for possible
  values.

Example for a MMP platform:

	gpio: gpio@d4019000 {
		compatible = "marvell,mmp-gpio";
		reg = <0xd4019000 0x1000>;
		interrupts = <49>;
		interrupt-names = "gpio_mux";
		gpio-controller;
		#gpio-cells = <2>;
		interrupt-controller;
		#interrupt-cells = <1>;
      };

Example for a PXA3xx platform:

	gpio: gpio@40e00000 {
		compatible = "intel,pxa3xx-gpio";
		reg = <0x40e00000 0x10000>;
		interrupt-names = "gpio0", "gpio1", "gpio_mux";
		interrupts = <8 9 10>;
		gpio-controller;
		#gpio-cells = <0x2>;
		interrupt-controller;
		#interrupt-cells = <0x2>;
	};