| * Renesas R-Car GPIO Controller |
| |
| Required Properties: |
| |
| - compatible: should contain one of the following. |
| - "renesas,gpio-r8a7778": for R8A7778 (R-Mobile M1) compatible GPIO controller. |
| - "renesas,gpio-r8a7779": for R8A7779 (R-Car H1) compatible GPIO controller. |
| - "renesas,gpio-r8a7790": for R8A7790 (R-Car H2) compatible GPIO controller. |
| - "renesas,gpio-r8a7791": for R8A7791 (R-Car M2-W) compatible GPIO controller. |
| - "renesas,gpio-r8a7793": for R8A7793 (R-Car M2-N) compatible GPIO controller. |
| - "renesas,gpio-r8a7794": for R8A7794 (R-Car E2) compatible GPIO controller. |
| - "renesas,gpio-rcar": for generic R-Car GPIO controller. |
| |
| - reg: Base address and length of each memory resource used by the GPIO |
| controller hardware module. |
| |
| - interrupt-parent: phandle of the parent interrupt controller. |
| - interrupts: Interrupt specifier for the controllers interrupt. |
| |
| - gpio-controller: Marks the device node as a gpio controller. |
| - #gpio-cells: Should be 2. The first cell is the GPIO number and the second |
| cell specifies GPIO flags, as defined in <dt-bindings/gpio/gpio.h>. Only the |
| GPIO_ACTIVE_HIGH and GPIO_ACTIVE_LOW flags are supported. |
| - gpio-ranges: Range of pins managed by the GPIO controller. |
| |
| Optional properties: |
| |
| - clocks: Must contain a reference to the functional clock. The property is |
| mandatory if the hardware implements a controllable functional clock for |
| the GPIO instance. |
| |
| Please refer to gpio.txt in this directory for details of gpio-ranges property |
| and the common GPIO bindings used by client devices. |
| |
| The GPIO controller also acts as an interrupt controller. It uses the default |
| two cells specifier as described in Documentation/devicetree/bindings/ |
| interrupt-controller/interrupts.txt. |
| |
| Example: R8A7779 (R-Car H1) GPIO controller nodes |
| |
| gpio0: gpio@ffc40000 { |
| compatible = "renesas,gpio-r8a7779", "renesas,gpio-rcar"; |
| reg = <0xffc40000 0x2c>; |
| interrupt-parent = <&gic>; |
| interrupts = <0 141 0x4>; |
| #gpio-cells = <2>; |
| gpio-controller; |
| gpio-ranges = <&pfc 0 0 32>; |
| interrupt-controller; |
| #interrupt-cells = <2>; |
| }; |
| ... |
| gpio6: gpio@ffc46000 { |
| compatible = "renesas,gpio-r8a7779", "renesas,gpio-rcar"; |
| reg = <0xffc46000 0x2c>; |
| interrupt-parent = <&gic>; |
| interrupts = <0 147 0x4>; |
| #gpio-cells = <2>; |
| gpio-controller; |
| gpio-ranges = <&pfc 0 192 9>; |
| interrupt-controller; |
| #interrupt-cells = <2>; |
| }; |