1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/interrupt-controller/renesas,rzv2h-icu.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Renesas RZ/{G3E,V2H(P)} Interrupt Control Unit 8 9maintainers: 10 - Fabrizio Castro <fabrizio.castro.jz@renesas.com> 11 - Geert Uytterhoeven <geert+renesas@glider.be> 12 13allOf: 14 - $ref: /schemas/interrupt-controller.yaml# 15 16description: 17 The Interrupt Control Unit (ICU) handles external interrupts (NMI, IRQ, and 18 TINT), error interrupts, DMAC requests, GPT interrupts, and internal 19 interrupts. 20 21properties: 22 compatible: 23 enum: 24 - renesas,r9a09g047-icu # RZ/G3E 25 - renesas,r9a09g057-icu # RZ/V2H(P) 26 27 '#interrupt-cells': 28 description: The first cell is the SPI number of the NMI or the 29 PORT_IRQ[0-15] interrupt, as per user manual. The second cell is used to 30 specify the flag. 31 const: 2 32 33 '#address-cells': 34 const: 0 35 36 interrupt-controller: true 37 38 reg: 39 maxItems: 1 40 41 interrupts: 42 minItems: 58 43 items: 44 - description: NMI interrupt 45 - description: PORT_IRQ0 interrupt 46 - description: PORT_IRQ1 interrupt 47 - description: PORT_IRQ2 interrupt 48 - description: PORT_IRQ3 interrupt 49 - description: PORT_IRQ4 interrupt 50 - description: PORT_IRQ5 interrupt 51 - description: PORT_IRQ6 interrupt 52 - description: PORT_IRQ7 interrupt 53 - description: PORT_IRQ8 interrupt 54 - description: PORT_IRQ9 interrupt 55 - description: PORT_IRQ10 interrupt 56 - description: PORT_IRQ11 interrupt 57 - description: PORT_IRQ12 interrupt 58 - description: PORT_IRQ13 interrupt 59 - description: PORT_IRQ14 interrupt 60 - description: PORT_IRQ15 interrupt 61 - description: GPIO interrupt, TINT0 62 - description: GPIO interrupt, TINT1 63 - description: GPIO interrupt, TINT2 64 - description: GPIO interrupt, TINT3 65 - description: GPIO interrupt, TINT4 66 - description: GPIO interrupt, TINT5 67 - description: GPIO interrupt, TINT6 68 - description: GPIO interrupt, TINT7 69 - description: GPIO interrupt, TINT8 70 - description: GPIO interrupt, TINT9 71 - description: GPIO interrupt, TINT10 72 - description: GPIO interrupt, TINT11 73 - description: GPIO interrupt, TINT12 74 - description: GPIO interrupt, TINT13 75 - description: GPIO interrupt, TINT14 76 - description: GPIO interrupt, TINT15 77 - description: GPIO interrupt, TINT16 78 - description: GPIO interrupt, TINT17 79 - description: GPIO interrupt, TINT18 80 - description: GPIO interrupt, TINT19 81 - description: GPIO interrupt, TINT20 82 - description: GPIO interrupt, TINT21 83 - description: GPIO interrupt, TINT22 84 - description: GPIO interrupt, TINT23 85 - description: GPIO interrupt, TINT24 86 - description: GPIO interrupt, TINT25 87 - description: GPIO interrupt, TINT26 88 - description: GPIO interrupt, TINT27 89 - description: GPIO interrupt, TINT28 90 - description: GPIO interrupt, TINT29 91 - description: GPIO interrupt, TINT30 92 - description: GPIO interrupt, TINT31 93 - description: Software interrupt, INTA55_0 94 - description: Software interrupt, INTA55_1 95 - description: Software interrupt, INTA55_2 96 - description: Software interrupt, INTA55_3 97 - description: Error interrupt to CA55 98 - description: GTCCRA compare match/input capture (U0) 99 - description: GTCCRB compare match/input capture (U0) 100 - description: GTCCRA compare match/input capture (U1) 101 - description: GTCCRB compare match/input capture (U1) 102 103 interrupt-names: 104 minItems: 58 105 items: 106 - const: nmi 107 - const: port_irq0 108 - const: port_irq1 109 - const: port_irq2 110 - const: port_irq3 111 - const: port_irq4 112 - const: port_irq5 113 - const: port_irq6 114 - const: port_irq7 115 - const: port_irq8 116 - const: port_irq9 117 - const: port_irq10 118 - const: port_irq11 119 - const: port_irq12 120 - const: port_irq13 121 - const: port_irq14 122 - const: port_irq15 123 - const: tint0 124 - const: tint1 125 - const: tint2 126 - const: tint3 127 - const: tint4 128 - const: tint5 129 - const: tint6 130 - const: tint7 131 - const: tint8 132 - const: tint9 133 - const: tint10 134 - const: tint11 135 - const: tint12 136 - const: tint13 137 - const: tint14 138 - const: tint15 139 - const: tint16 140 - const: tint17 141 - const: tint18 142 - const: tint19 143 - const: tint20 144 - const: tint21 145 - const: tint22 146 - const: tint23 147 - const: tint24 148 - const: tint25 149 - const: tint26 150 - const: tint27 151 - const: tint28 152 - const: tint29 153 - const: tint30 154 - const: tint31 155 - const: int-ca55-0 156 - const: int-ca55-1 157 - const: int-ca55-2 158 - const: int-ca55-3 159 - const: icu-error-ca55 160 - const: gpt-u0-gtciada 161 - const: gpt-u0-gtciadb 162 - const: gpt-u1-gtciada 163 - const: gpt-u1-gtciadb 164 165 clocks: 166 maxItems: 1 167 168 power-domains: 169 maxItems: 1 170 171 resets: 172 maxItems: 1 173 174required: 175 - compatible 176 - reg 177 - '#interrupt-cells' 178 - '#address-cells' 179 - interrupt-controller 180 - interrupts 181 - interrupt-names 182 - clocks 183 - power-domains 184 - resets 185 186unevaluatedProperties: false 187 188examples: 189 - | 190 #include <dt-bindings/interrupt-controller/arm-gic.h> 191 #include <dt-bindings/clock/renesas-cpg-mssr.h> 192 193 icu: interrupt-controller@10400000 { 194 compatible = "renesas,r9a09g057-icu"; 195 reg = <0x10400000 0x10000>; 196 #interrupt-cells = <2>; 197 #address-cells = <0>; 198 interrupt-controller; 199 interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>, 200 <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>, 201 <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>, 202 <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>, 203 <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>, 204 <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>, 205 <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>, 206 <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>, 207 <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>, 208 <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>, 209 <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>, 210 <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>, 211 <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>, 212 <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>, 213 <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>, 214 <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>, 215 <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>, 216 <GIC_SPI 419 IRQ_TYPE_LEVEL_HIGH>, 217 <GIC_SPI 420 IRQ_TYPE_LEVEL_HIGH>, 218 <GIC_SPI 421 IRQ_TYPE_LEVEL_HIGH>, 219 <GIC_SPI 422 IRQ_TYPE_LEVEL_HIGH>, 220 <GIC_SPI 423 IRQ_TYPE_LEVEL_HIGH>, 221 <GIC_SPI 424 IRQ_TYPE_LEVEL_HIGH>, 222 <GIC_SPI 425 IRQ_TYPE_LEVEL_HIGH>, 223 <GIC_SPI 426 IRQ_TYPE_LEVEL_HIGH>, 224 <GIC_SPI 427 IRQ_TYPE_LEVEL_HIGH>, 225 <GIC_SPI 428 IRQ_TYPE_LEVEL_HIGH>, 226 <GIC_SPI 429 IRQ_TYPE_LEVEL_HIGH>, 227 <GIC_SPI 430 IRQ_TYPE_LEVEL_HIGH>, 228 <GIC_SPI 431 IRQ_TYPE_LEVEL_HIGH>, 229 <GIC_SPI 432 IRQ_TYPE_LEVEL_HIGH>, 230 <GIC_SPI 433 IRQ_TYPE_LEVEL_HIGH>, 231 <GIC_SPI 434 IRQ_TYPE_LEVEL_HIGH>, 232 <GIC_SPI 435 IRQ_TYPE_LEVEL_HIGH>, 233 <GIC_SPI 436 IRQ_TYPE_LEVEL_HIGH>, 234 <GIC_SPI 437 IRQ_TYPE_LEVEL_HIGH>, 235 <GIC_SPI 438 IRQ_TYPE_LEVEL_HIGH>, 236 <GIC_SPI 439 IRQ_TYPE_LEVEL_HIGH>, 237 <GIC_SPI 440 IRQ_TYPE_LEVEL_HIGH>, 238 <GIC_SPI 441 IRQ_TYPE_LEVEL_HIGH>, 239 <GIC_SPI 442 IRQ_TYPE_LEVEL_HIGH>, 240 <GIC_SPI 443 IRQ_TYPE_LEVEL_HIGH>, 241 <GIC_SPI 444 IRQ_TYPE_LEVEL_HIGH>, 242 <GIC_SPI 445 IRQ_TYPE_LEVEL_HIGH>, 243 <GIC_SPI 446 IRQ_TYPE_LEVEL_HIGH>, 244 <GIC_SPI 447 IRQ_TYPE_LEVEL_HIGH>, 245 <GIC_SPI 448 IRQ_TYPE_LEVEL_HIGH>, 246 <GIC_SPI 449 IRQ_TYPE_LEVEL_HIGH>, 247 <GIC_SPI 450 IRQ_TYPE_LEVEL_HIGH>, 248 <GIC_SPI 262 IRQ_TYPE_EDGE_RISING>, 249 <GIC_SPI 263 IRQ_TYPE_EDGE_RISING>, 250 <GIC_SPI 264 IRQ_TYPE_EDGE_RISING>, 251 <GIC_SPI 265 IRQ_TYPE_EDGE_RISING>, 252 <GIC_SPI 266 IRQ_TYPE_LEVEL_HIGH>, 253 <GIC_SPI 451 IRQ_TYPE_LEVEL_HIGH>, 254 <GIC_SPI 452 IRQ_TYPE_LEVEL_HIGH>, 255 <GIC_SPI 453 IRQ_TYPE_LEVEL_HIGH>, 256 <GIC_SPI 454 IRQ_TYPE_LEVEL_HIGH>; 257 interrupt-names = "nmi", 258 "port_irq0", "port_irq1", "port_irq2", 259 "port_irq3", "port_irq4", "port_irq5", 260 "port_irq6", "port_irq7", "port_irq8", 261 "port_irq9", "port_irq10", "port_irq11", 262 "port_irq12", "port_irq13", "port_irq14", 263 "port_irq15", 264 "tint0", "tint1", "tint2", "tint3", 265 "tint4", "tint5", "tint6", "tint7", 266 "tint8", "tint9", "tint10", "tint11", 267 "tint12", "tint13", "tint14", "tint15", 268 "tint16", "tint17", "tint18", "tint19", 269 "tint20", "tint21", "tint22", "tint23", 270 "tint24", "tint25", "tint26", "tint27", 271 "tint28", "tint29", "tint30", "tint31", 272 "int-ca55-0", "int-ca55-1", 273 "int-ca55-2", "int-ca55-3", 274 "icu-error-ca55", 275 "gpt-u0-gtciada", "gpt-u0-gtciadb", 276 "gpt-u1-gtciada", "gpt-u1-gtciadb"; 277 clocks = <&cpg CPG_MOD 0x5>; 278 power-domains = <&cpg>; 279 resets = <&cpg 0x36>; 280 }; 281