1*b97ee269SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*b97ee269SEmmanuel Vadot%YAML 1.2 3*b97ee269SEmmanuel Vadot--- 4*b97ee269SEmmanuel Vadot$id: http://devicetree.org/schemas/interrupt-controller/renesas,rzg2l-irqc.yaml# 5*b97ee269SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*b97ee269SEmmanuel Vadot 7*b97ee269SEmmanuel Vadottitle: Renesas RZ/G2L (and alike SoC's) Interrupt Controller (IA55) 8*b97ee269SEmmanuel Vadot 9*b97ee269SEmmanuel Vadotmaintainers: 10*b97ee269SEmmanuel Vadot - Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> 11*b97ee269SEmmanuel Vadot - Geert Uytterhoeven <geert+renesas@glider.be> 12*b97ee269SEmmanuel Vadot 13*b97ee269SEmmanuel Vadotdescription: | 14*b97ee269SEmmanuel Vadot IA55 performs various interrupt controls including synchronization for the external 15*b97ee269SEmmanuel Vadot interrupts of NMI, IRQ, and GPIOINT and the interrupts of the built-in peripheral 16*b97ee269SEmmanuel Vadot interrupts output by each IP. And it notifies the interrupt to the GIC 17*b97ee269SEmmanuel Vadot - IRQ sense select for 8 external interrupts, mapped to 8 GIC SPI interrupts 18*b97ee269SEmmanuel Vadot - GPIO pins used as external interrupt input pins, mapped to 32 GIC SPI interrupts 19*b97ee269SEmmanuel Vadot - NMI edge select (NMI is not treated as NMI exception and supports fall edge and 20*b97ee269SEmmanuel Vadot stand-up edge detection interrupts) 21*b97ee269SEmmanuel Vadot 22*b97ee269SEmmanuel VadotallOf: 23*b97ee269SEmmanuel Vadot - $ref: /schemas/interrupt-controller.yaml# 24*b97ee269SEmmanuel Vadot 25*b97ee269SEmmanuel Vadotproperties: 26*b97ee269SEmmanuel Vadot compatible: 27*b97ee269SEmmanuel Vadot items: 28*b97ee269SEmmanuel Vadot - enum: 29*b97ee269SEmmanuel Vadot - renesas,r9a07g044-irqc # RZ/G2{L,LC} 30*b97ee269SEmmanuel Vadot - renesas,r9a07g054-irqc # RZ/V2L 31*b97ee269SEmmanuel Vadot - const: renesas,rzg2l-irqc 32*b97ee269SEmmanuel Vadot 33*b97ee269SEmmanuel Vadot '#interrupt-cells': 34*b97ee269SEmmanuel Vadot description: The first cell should contain external interrupt number (IRQ0-7) and the 35*b97ee269SEmmanuel Vadot second cell is used to specify the flag. 36*b97ee269SEmmanuel Vadot const: 2 37*b97ee269SEmmanuel Vadot 38*b97ee269SEmmanuel Vadot '#address-cells': 39*b97ee269SEmmanuel Vadot const: 0 40*b97ee269SEmmanuel Vadot 41*b97ee269SEmmanuel Vadot interrupt-controller: true 42*b97ee269SEmmanuel Vadot 43*b97ee269SEmmanuel Vadot reg: 44*b97ee269SEmmanuel Vadot maxItems: 1 45*b97ee269SEmmanuel Vadot 46*b97ee269SEmmanuel Vadot interrupts: 47*b97ee269SEmmanuel Vadot maxItems: 41 48*b97ee269SEmmanuel Vadot 49*b97ee269SEmmanuel Vadot clocks: 50*b97ee269SEmmanuel Vadot maxItems: 2 51*b97ee269SEmmanuel Vadot 52*b97ee269SEmmanuel Vadot clock-names: 53*b97ee269SEmmanuel Vadot items: 54*b97ee269SEmmanuel Vadot - const: clk 55*b97ee269SEmmanuel Vadot - const: pclk 56*b97ee269SEmmanuel Vadot 57*b97ee269SEmmanuel Vadot power-domains: 58*b97ee269SEmmanuel Vadot maxItems: 1 59*b97ee269SEmmanuel Vadot 60*b97ee269SEmmanuel Vadot resets: 61*b97ee269SEmmanuel Vadot maxItems: 1 62*b97ee269SEmmanuel Vadot 63*b97ee269SEmmanuel Vadotrequired: 64*b97ee269SEmmanuel Vadot - compatible 65*b97ee269SEmmanuel Vadot - '#interrupt-cells' 66*b97ee269SEmmanuel Vadot - '#address-cells' 67*b97ee269SEmmanuel Vadot - interrupt-controller 68*b97ee269SEmmanuel Vadot - reg 69*b97ee269SEmmanuel Vadot - interrupts 70*b97ee269SEmmanuel Vadot - clocks 71*b97ee269SEmmanuel Vadot - clock-names 72*b97ee269SEmmanuel Vadot - power-domains 73*b97ee269SEmmanuel Vadot - resets 74*b97ee269SEmmanuel Vadot 75*b97ee269SEmmanuel VadotunevaluatedProperties: false 76*b97ee269SEmmanuel Vadot 77*b97ee269SEmmanuel Vadotexamples: 78*b97ee269SEmmanuel Vadot - | 79*b97ee269SEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 80*b97ee269SEmmanuel Vadot #include <dt-bindings/clock/r9a07g044-cpg.h> 81*b97ee269SEmmanuel Vadot 82*b97ee269SEmmanuel Vadot irqc: interrupt-controller@110a0000 { 83*b97ee269SEmmanuel Vadot compatible = "renesas,r9a07g044-irqc", "renesas,rzg2l-irqc"; 84*b97ee269SEmmanuel Vadot reg = <0x110a0000 0x10000>; 85*b97ee269SEmmanuel Vadot #interrupt-cells = <2>; 86*b97ee269SEmmanuel Vadot #address-cells = <0>; 87*b97ee269SEmmanuel Vadot interrupt-controller; 88*b97ee269SEmmanuel Vadot interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>, 89*b97ee269SEmmanuel Vadot <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>, 90*b97ee269SEmmanuel Vadot <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>, 91*b97ee269SEmmanuel Vadot <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>, 92*b97ee269SEmmanuel Vadot <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>, 93*b97ee269SEmmanuel Vadot <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>, 94*b97ee269SEmmanuel Vadot <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>, 95*b97ee269SEmmanuel Vadot <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>, 96*b97ee269SEmmanuel Vadot <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>, 97*b97ee269SEmmanuel Vadot <GIC_SPI 444 IRQ_TYPE_LEVEL_HIGH>, 98*b97ee269SEmmanuel Vadot <GIC_SPI 445 IRQ_TYPE_LEVEL_HIGH>, 99*b97ee269SEmmanuel Vadot <GIC_SPI 446 IRQ_TYPE_LEVEL_HIGH>, 100*b97ee269SEmmanuel Vadot <GIC_SPI 447 IRQ_TYPE_LEVEL_HIGH>, 101*b97ee269SEmmanuel Vadot <GIC_SPI 448 IRQ_TYPE_LEVEL_HIGH>, 102*b97ee269SEmmanuel Vadot <GIC_SPI 449 IRQ_TYPE_LEVEL_HIGH>, 103*b97ee269SEmmanuel Vadot <GIC_SPI 450 IRQ_TYPE_LEVEL_HIGH>, 104*b97ee269SEmmanuel Vadot <GIC_SPI 451 IRQ_TYPE_LEVEL_HIGH>, 105*b97ee269SEmmanuel Vadot <GIC_SPI 452 IRQ_TYPE_LEVEL_HIGH>, 106*b97ee269SEmmanuel Vadot <GIC_SPI 453 IRQ_TYPE_LEVEL_HIGH>, 107*b97ee269SEmmanuel Vadot <GIC_SPI 454 IRQ_TYPE_LEVEL_HIGH>, 108*b97ee269SEmmanuel Vadot <GIC_SPI 455 IRQ_TYPE_LEVEL_HIGH>, 109*b97ee269SEmmanuel Vadot <GIC_SPI 456 IRQ_TYPE_LEVEL_HIGH>, 110*b97ee269SEmmanuel Vadot <GIC_SPI 457 IRQ_TYPE_LEVEL_HIGH>, 111*b97ee269SEmmanuel Vadot <GIC_SPI 458 IRQ_TYPE_LEVEL_HIGH>, 112*b97ee269SEmmanuel Vadot <GIC_SPI 459 IRQ_TYPE_LEVEL_HIGH>, 113*b97ee269SEmmanuel Vadot <GIC_SPI 460 IRQ_TYPE_LEVEL_HIGH>, 114*b97ee269SEmmanuel Vadot <GIC_SPI 461 IRQ_TYPE_LEVEL_HIGH>, 115*b97ee269SEmmanuel Vadot <GIC_SPI 462 IRQ_TYPE_LEVEL_HIGH>, 116*b97ee269SEmmanuel Vadot <GIC_SPI 463 IRQ_TYPE_LEVEL_HIGH>, 117*b97ee269SEmmanuel Vadot <GIC_SPI 464 IRQ_TYPE_LEVEL_HIGH>, 118*b97ee269SEmmanuel Vadot <GIC_SPI 465 IRQ_TYPE_LEVEL_HIGH>, 119*b97ee269SEmmanuel Vadot <GIC_SPI 466 IRQ_TYPE_LEVEL_HIGH>, 120*b97ee269SEmmanuel Vadot <GIC_SPI 467 IRQ_TYPE_LEVEL_HIGH>, 121*b97ee269SEmmanuel Vadot <GIC_SPI 468 IRQ_TYPE_LEVEL_HIGH>, 122*b97ee269SEmmanuel Vadot <GIC_SPI 469 IRQ_TYPE_LEVEL_HIGH>, 123*b97ee269SEmmanuel Vadot <GIC_SPI 470 IRQ_TYPE_LEVEL_HIGH>, 124*b97ee269SEmmanuel Vadot <GIC_SPI 471 IRQ_TYPE_LEVEL_HIGH>, 125*b97ee269SEmmanuel Vadot <GIC_SPI 472 IRQ_TYPE_LEVEL_HIGH>, 126*b97ee269SEmmanuel Vadot <GIC_SPI 473 IRQ_TYPE_LEVEL_HIGH>, 127*b97ee269SEmmanuel Vadot <GIC_SPI 474 IRQ_TYPE_LEVEL_HIGH>, 128*b97ee269SEmmanuel Vadot <GIC_SPI 475 IRQ_TYPE_LEVEL_HIGH>; 129*b97ee269SEmmanuel Vadot clocks = <&cpg CPG_MOD R9A07G044_IA55_CLK>, 130*b97ee269SEmmanuel Vadot <&cpg CPG_MOD R9A07G044_IA55_PCLK>; 131*b97ee269SEmmanuel Vadot clock-names = "clk", "pclk"; 132*b97ee269SEmmanuel Vadot power-domains = <&cpg>; 133*b97ee269SEmmanuel Vadot resets = <&cpg R9A07G044_IA55_RESETN>; 134*b97ee269SEmmanuel Vadot }; 135