1 ImgTec TZ1090 GPIO Controller
4 - compatible: Compatible property value should be "img,tz1090-gpio".
6 - reg: Physical base address of the controller and length of memory mapped
9 - #address-cells: Should be 1 (for bank subnodes)
11 - #size-cells: Should be 0 (for bank subnodes)
13 - Each bank of GPIOs should have a subnode to represent it.
15 Bank subnode required properties:
16 - reg: Index of bank in the range 0 to 2.
18 - gpio-controller: Specifies that the node is a gpio controller.
20 - #gpio-cells: Should be 2. The syntax of the gpio specifier used by client
21 nodes should have the following values.
22 <[phandle of the gpio controller node]
23 [gpio number within the gpio bank]
26 Values for gpio specifier:
27 - GPIO number: a value in the range 0 to 29.
28 - GPIO flags: bit field of flags, as defined in <dt-bindings/gpio/gpio.h>.
29 Only the following flags are supported:
33 Bank subnode optional properties:
34 - gpio-ranges: Mapping to pin controller pins (as described in
35 Documentation/devicetree/bindings/gpio/gpio.txt)
37 - interrupts: Interrupt for the entire bank
39 - interrupt-controller: Specifies that the node is an interrupt controller
41 - #interrupt-cells: Should be 2. The syntax of the interrupt specifier used by
42 client nodes should have the following values.
43 <[phandle of the interurupt controller]
44 [gpio number within the gpio bank]
47 Values for irq specifier:
48 - GPIO number: a value in the range 0 to 29
49 - IRQ flags: value to describe edge and level triggering, as defined in
50 <dt-bindings/interrupt-controller/irq.h>. Only the following flags are
62 gpios: gpio-controller@02005800 {
65 compatible = "img,tz1090-gpio";
66 reg = <0x02005800 0x90>;
68 /* bank 0 with an interrupt */
71 #interrupt-cells = <2>;
73 interrupts = <13 IRQ_TYPE_LEVEL_HIGH>;
75 gpio-ranges = <&pinctrl 0 0 30>;
79 /* bank 2 without interrupt */
84 gpio-ranges = <&pinctrl 0 60 30>;