1 APM X-Gene Standby GPIO controller bindings
3 This is a gpio controller in the standby domain. It also supports interrupt in
4 some particular pins which are sourced to its parent interrupt controller
8 | GPIO controller +------ GPIO_0
10 | Parent IRQ | EXT_INT_0 | +------ GPIO_8/EXT_INT_0
11 | controller | (SPI40) | | ...
12 | (GICv2) +--------------+ +------ GPIO_[N+8]/EXT_INT_N
14 | | EXT_INT_N | +------ GPIO_[N+9]
15 | | (SPI[40 + N])| | ...
16 | +--------------+ +------ GPIO_MAX
17 +------------+ +-----------------+
20 - compatible: "apm,xgene-gpio-sb" for the X-Gene Standby GPIO controller
21 - reg: Physical base address and size of the controller's registers
22 - #gpio-cells: Should be two.
23 - first cell is the pin number
24 - second cell is used to specify the gpio polarity:
27 - gpio-controller: Marks the device node as a GPIO controller.
28 - interrupts: The EXT_INT_0 parent interrupt resource must be listed first.
29 - interrupt-parent: Phandle of the parent interrupt controller.
30 - interrupt-cells: Should be two.
31 - first cell is 0-N coresponding for EXT_INT_0 to EXT_INT_N.
32 - second cell is used to specify flags.
33 - interrupt-controller: Marks the device node as an interrupt controller.
34 - apm,nr-gpios: Optional, specify number of gpios pin.
35 - apm,nr-irqs: Optional, specify number of interrupt pins.
36 - apm,irq-start: Optional, specify lowest gpio pin support interrupt.
39 sbgpio: gpio@17001000{
40 compatible = "apm,xgene-gpio-sb";
41 reg = <0x0 0x17001000 0x0 0x400>;
44 interrupts = <0x0 0x28 0x1>,
50 interrupt-parent = <&gic>;
51 #interrupt-cells = <2>;
59 compatible = "example,testuser";
60 /* Use the GPIO_13/EXT_INT_5 line as an active high triggered
64 interrupt-parent = <&sbgpio>;