@@ -725,6 +725,22 @@
#power-domain-cells = <1>;
};
+ intc_ex: interrupt-controller@e61c0000 {
+ compatible = "renesas,intc-ex-r8a7796", "renesas,irqc";
+ #interrupt-cells = <2>;
+ interrupt-controller;
+ reg = <0 0xe61c0000 0 0x200>;
+ interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH
+ GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH
+ GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH
+ GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH
+ GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH
+ GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&cpg CPG_MOD 407>;
+ power-domains = <&sysc R8A7796_PD_ALWAYS_ON>;
+ resets = <&cpg 407>;
+ };
+
i2c_dvfs: i2c@e60b0000 {
#address-cells = <1>;
#size-cells = <0>;
Add a device node for the Interrupt Controller for External Devices (INTC-EX) on R-Car M3-W, which serves external IRQ pins IRQ[0-5]. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> --- Tested on Salvator-X by: 1) Enabling pinctrl and pull-up for IRQ1/GP2_01 in salvator-common.dtsi: @@ -376,7 +376,7 @@ }; &pfc { - pinctrl-0 = <&scif_clk_pins>; + pinctrl-0 = <&scif_clk_pins &irq1_pins &keyboard_pins>; pinctrl-names = "default"; avb_pins: avb { @@ -407,6 +407,16 @@ function = "i2c2"; }; + irq1_pins: irq1 { + groups = "intc_ex_irq1"; + function = "intc_ex"; + }; + + keyboard_pins: keyboard { + pins = "GP_2_1"; + bias-pull-up; + }; + pwm1_pins: pwm1 { groups = "pwm1_a"; function = "pwm1"; 2) Triggering IRQ1 by tying EXIO-D pin 50 to GND, 3) Verifying that the IRQC_MONITOR register contents change due to triggering. --- arch/arm64/boot/dts/renesas/r8a7796.dtsi | 16 ++++++++++++++++ 1 file changed, 16 insertions(+)