13d5fb05eSFabrizio Castro# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 23d5fb05eSFabrizio Castro%YAML 1.2 33d5fb05eSFabrizio Castro--- 43d5fb05eSFabrizio Castro$id: http://devicetree.org/schemas/interrupt-controller/renesas,rzv2h-icu.yaml# 53d5fb05eSFabrizio Castro$schema: http://devicetree.org/meta-schemas/core.yaml# 63d5fb05eSFabrizio Castro 7*9d245214SBiju Dastitle: Renesas RZ/{G3E,V2H(P)} Interrupt Control Unit 83d5fb05eSFabrizio Castro 93d5fb05eSFabrizio Castromaintainers: 103d5fb05eSFabrizio Castro - Fabrizio Castro <fabrizio.castro.jz@renesas.com> 113d5fb05eSFabrizio Castro - Geert Uytterhoeven <geert+renesas@glider.be> 123d5fb05eSFabrizio Castro 133d5fb05eSFabrizio CastroallOf: 143d5fb05eSFabrizio Castro - $ref: /schemas/interrupt-controller.yaml# 153d5fb05eSFabrizio Castro 163d5fb05eSFabrizio Castrodescription: 173d5fb05eSFabrizio Castro The Interrupt Control Unit (ICU) handles external interrupts (NMI, IRQ, and 183d5fb05eSFabrizio Castro TINT), error interrupts, DMAC requests, GPT interrupts, and internal 193d5fb05eSFabrizio Castro interrupts. 203d5fb05eSFabrizio Castro 213d5fb05eSFabrizio Castroproperties: 223d5fb05eSFabrizio Castro compatible: 23*9d245214SBiju Das enum: 24*9d245214SBiju Das - renesas,r9a09g047-icu # RZ/G3E 25*9d245214SBiju Das - renesas,r9a09g057-icu # RZ/V2H(P) 263d5fb05eSFabrizio Castro 273d5fb05eSFabrizio Castro '#interrupt-cells': 283d5fb05eSFabrizio Castro description: The first cell is the SPI number of the NMI or the 293d5fb05eSFabrizio Castro PORT_IRQ[0-15] interrupt, as per user manual. The second cell is used to 303d5fb05eSFabrizio Castro specify the flag. 313d5fb05eSFabrizio Castro const: 2 323d5fb05eSFabrizio Castro 333d5fb05eSFabrizio Castro '#address-cells': 343d5fb05eSFabrizio Castro const: 0 353d5fb05eSFabrizio Castro 363d5fb05eSFabrizio Castro interrupt-controller: true 373d5fb05eSFabrizio Castro 383d5fb05eSFabrizio Castro reg: 393d5fb05eSFabrizio Castro maxItems: 1 403d5fb05eSFabrizio Castro 413d5fb05eSFabrizio Castro interrupts: 423d5fb05eSFabrizio Castro minItems: 58 433d5fb05eSFabrizio Castro items: 443d5fb05eSFabrizio Castro - description: NMI interrupt 453d5fb05eSFabrizio Castro - description: PORT_IRQ0 interrupt 463d5fb05eSFabrizio Castro - description: PORT_IRQ1 interrupt 473d5fb05eSFabrizio Castro - description: PORT_IRQ2 interrupt 483d5fb05eSFabrizio Castro - description: PORT_IRQ3 interrupt 493d5fb05eSFabrizio Castro - description: PORT_IRQ4 interrupt 503d5fb05eSFabrizio Castro - description: PORT_IRQ5 interrupt 513d5fb05eSFabrizio Castro - description: PORT_IRQ6 interrupt 523d5fb05eSFabrizio Castro - description: PORT_IRQ7 interrupt 533d5fb05eSFabrizio Castro - description: PORT_IRQ8 interrupt 543d5fb05eSFabrizio Castro - description: PORT_IRQ9 interrupt 553d5fb05eSFabrizio Castro - description: PORT_IRQ10 interrupt 563d5fb05eSFabrizio Castro - description: PORT_IRQ11 interrupt 573d5fb05eSFabrizio Castro - description: PORT_IRQ12 interrupt 583d5fb05eSFabrizio Castro - description: PORT_IRQ13 interrupt 593d5fb05eSFabrizio Castro - description: PORT_IRQ14 interrupt 603d5fb05eSFabrizio Castro - description: PORT_IRQ15 interrupt 613d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT0 623d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT1 633d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT2 643d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT3 653d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT4 663d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT5 673d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT6 683d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT7 693d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT8 703d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT9 713d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT10 723d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT11 733d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT12 743d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT13 753d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT14 763d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT15 773d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT16 783d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT17 793d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT18 803d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT19 813d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT20 823d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT21 833d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT22 843d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT23 853d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT24 863d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT25 873d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT26 883d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT27 893d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT28 903d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT29 913d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT30 923d5fb05eSFabrizio Castro - description: GPIO interrupt, TINT31 933d5fb05eSFabrizio Castro - description: Software interrupt, INTA55_0 943d5fb05eSFabrizio Castro - description: Software interrupt, INTA55_1 953d5fb05eSFabrizio Castro - description: Software interrupt, INTA55_2 963d5fb05eSFabrizio Castro - description: Software interrupt, INTA55_3 973d5fb05eSFabrizio Castro - description: Error interrupt to CA55 983d5fb05eSFabrizio Castro - description: GTCCRA compare match/input capture (U0) 993d5fb05eSFabrizio Castro - description: GTCCRB compare match/input capture (U0) 1003d5fb05eSFabrizio Castro - description: GTCCRA compare match/input capture (U1) 1013d5fb05eSFabrizio Castro - description: GTCCRB compare match/input capture (U1) 1023d5fb05eSFabrizio Castro 1033d5fb05eSFabrizio Castro interrupt-names: 1043d5fb05eSFabrizio Castro minItems: 58 1053d5fb05eSFabrizio Castro items: 1063d5fb05eSFabrizio Castro - const: nmi 1073d5fb05eSFabrizio Castro - const: port_irq0 1083d5fb05eSFabrizio Castro - const: port_irq1 1093d5fb05eSFabrizio Castro - const: port_irq2 1103d5fb05eSFabrizio Castro - const: port_irq3 1113d5fb05eSFabrizio Castro - const: port_irq4 1123d5fb05eSFabrizio Castro - const: port_irq5 1133d5fb05eSFabrizio Castro - const: port_irq6 1143d5fb05eSFabrizio Castro - const: port_irq7 1153d5fb05eSFabrizio Castro - const: port_irq8 1163d5fb05eSFabrizio Castro - const: port_irq9 1173d5fb05eSFabrizio Castro - const: port_irq10 1183d5fb05eSFabrizio Castro - const: port_irq11 1193d5fb05eSFabrizio Castro - const: port_irq12 1203d5fb05eSFabrizio Castro - const: port_irq13 1213d5fb05eSFabrizio Castro - const: port_irq14 1223d5fb05eSFabrizio Castro - const: port_irq15 1233d5fb05eSFabrizio Castro - const: tint0 1243d5fb05eSFabrizio Castro - const: tint1 1253d5fb05eSFabrizio Castro - const: tint2 1263d5fb05eSFabrizio Castro - const: tint3 1273d5fb05eSFabrizio Castro - const: tint4 1283d5fb05eSFabrizio Castro - const: tint5 1293d5fb05eSFabrizio Castro - const: tint6 1303d5fb05eSFabrizio Castro - const: tint7 1313d5fb05eSFabrizio Castro - const: tint8 1323d5fb05eSFabrizio Castro - const: tint9 1333d5fb05eSFabrizio Castro - const: tint10 1343d5fb05eSFabrizio Castro - const: tint11 1353d5fb05eSFabrizio Castro - const: tint12 1363d5fb05eSFabrizio Castro - const: tint13 1373d5fb05eSFabrizio Castro - const: tint14 1383d5fb05eSFabrizio Castro - const: tint15 1393d5fb05eSFabrizio Castro - const: tint16 1403d5fb05eSFabrizio Castro - const: tint17 1413d5fb05eSFabrizio Castro - const: tint18 1423d5fb05eSFabrizio Castro - const: tint19 1433d5fb05eSFabrizio Castro - const: tint20 1443d5fb05eSFabrizio Castro - const: tint21 1453d5fb05eSFabrizio Castro - const: tint22 1463d5fb05eSFabrizio Castro - const: tint23 1473d5fb05eSFabrizio Castro - const: tint24 1483d5fb05eSFabrizio Castro - const: tint25 1493d5fb05eSFabrizio Castro - const: tint26 1503d5fb05eSFabrizio Castro - const: tint27 1513d5fb05eSFabrizio Castro - const: tint28 1523d5fb05eSFabrizio Castro - const: tint29 1533d5fb05eSFabrizio Castro - const: tint30 1543d5fb05eSFabrizio Castro - const: tint31 1553d5fb05eSFabrizio Castro - const: int-ca55-0 1563d5fb05eSFabrizio Castro - const: int-ca55-1 1573d5fb05eSFabrizio Castro - const: int-ca55-2 1583d5fb05eSFabrizio Castro - const: int-ca55-3 1593d5fb05eSFabrizio Castro - const: icu-error-ca55 1603d5fb05eSFabrizio Castro - const: gpt-u0-gtciada 1613d5fb05eSFabrizio Castro - const: gpt-u0-gtciadb 1623d5fb05eSFabrizio Castro - const: gpt-u1-gtciada 1633d5fb05eSFabrizio Castro - const: gpt-u1-gtciadb 1643d5fb05eSFabrizio Castro 1653d5fb05eSFabrizio Castro clocks: 1663d5fb05eSFabrizio Castro maxItems: 1 1673d5fb05eSFabrizio Castro 1683d5fb05eSFabrizio Castro power-domains: 1693d5fb05eSFabrizio Castro maxItems: 1 1703d5fb05eSFabrizio Castro 1713d5fb05eSFabrizio Castro resets: 1723d5fb05eSFabrizio Castro maxItems: 1 1733d5fb05eSFabrizio Castro 1743d5fb05eSFabrizio Castrorequired: 1753d5fb05eSFabrizio Castro - compatible 1763d5fb05eSFabrizio Castro - reg 1773d5fb05eSFabrizio Castro - '#interrupt-cells' 1783d5fb05eSFabrizio Castro - '#address-cells' 1793d5fb05eSFabrizio Castro - interrupt-controller 1803d5fb05eSFabrizio Castro - interrupts 1813d5fb05eSFabrizio Castro - interrupt-names 1823d5fb05eSFabrizio Castro - clocks 1833d5fb05eSFabrizio Castro - power-domains 1843d5fb05eSFabrizio Castro - resets 1853d5fb05eSFabrizio Castro 1863d5fb05eSFabrizio CastrounevaluatedProperties: false 1873d5fb05eSFabrizio Castro 1883d5fb05eSFabrizio Castroexamples: 1893d5fb05eSFabrizio Castro - | 1903d5fb05eSFabrizio Castro #include <dt-bindings/interrupt-controller/arm-gic.h> 1913d5fb05eSFabrizio Castro #include <dt-bindings/clock/renesas-cpg-mssr.h> 1923d5fb05eSFabrizio Castro 1933d5fb05eSFabrizio Castro icu: interrupt-controller@10400000 { 1943d5fb05eSFabrizio Castro compatible = "renesas,r9a09g057-icu"; 1953d5fb05eSFabrizio Castro reg = <0x10400000 0x10000>; 1963d5fb05eSFabrizio Castro #interrupt-cells = <2>; 1973d5fb05eSFabrizio Castro #address-cells = <0>; 1983d5fb05eSFabrizio Castro interrupt-controller; 1993d5fb05eSFabrizio Castro interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>, 2003d5fb05eSFabrizio Castro <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>, 2013d5fb05eSFabrizio Castro <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>, 2023d5fb05eSFabrizio Castro <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>, 2033d5fb05eSFabrizio Castro <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>, 2043d5fb05eSFabrizio Castro <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>, 2053d5fb05eSFabrizio Castro <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>, 2063d5fb05eSFabrizio Castro <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>, 2073d5fb05eSFabrizio Castro <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>, 2083d5fb05eSFabrizio Castro <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>, 2093d5fb05eSFabrizio Castro <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>, 2103d5fb05eSFabrizio Castro <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>, 2113d5fb05eSFabrizio Castro <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>, 2123d5fb05eSFabrizio Castro <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>, 2133d5fb05eSFabrizio Castro <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>, 2143d5fb05eSFabrizio Castro <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>, 2153d5fb05eSFabrizio Castro <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>, 2163d5fb05eSFabrizio Castro <GIC_SPI 419 IRQ_TYPE_LEVEL_HIGH>, 2173d5fb05eSFabrizio Castro <GIC_SPI 420 IRQ_TYPE_LEVEL_HIGH>, 2183d5fb05eSFabrizio Castro <GIC_SPI 421 IRQ_TYPE_LEVEL_HIGH>, 2193d5fb05eSFabrizio Castro <GIC_SPI 422 IRQ_TYPE_LEVEL_HIGH>, 2203d5fb05eSFabrizio Castro <GIC_SPI 423 IRQ_TYPE_LEVEL_HIGH>, 2213d5fb05eSFabrizio Castro <GIC_SPI 424 IRQ_TYPE_LEVEL_HIGH>, 2223d5fb05eSFabrizio Castro <GIC_SPI 425 IRQ_TYPE_LEVEL_HIGH>, 2233d5fb05eSFabrizio Castro <GIC_SPI 426 IRQ_TYPE_LEVEL_HIGH>, 2243d5fb05eSFabrizio Castro <GIC_SPI 427 IRQ_TYPE_LEVEL_HIGH>, 2253d5fb05eSFabrizio Castro <GIC_SPI 428 IRQ_TYPE_LEVEL_HIGH>, 2263d5fb05eSFabrizio Castro <GIC_SPI 429 IRQ_TYPE_LEVEL_HIGH>, 2273d5fb05eSFabrizio Castro <GIC_SPI 430 IRQ_TYPE_LEVEL_HIGH>, 2283d5fb05eSFabrizio Castro <GIC_SPI 431 IRQ_TYPE_LEVEL_HIGH>, 2293d5fb05eSFabrizio Castro <GIC_SPI 432 IRQ_TYPE_LEVEL_HIGH>, 2303d5fb05eSFabrizio Castro <GIC_SPI 433 IRQ_TYPE_LEVEL_HIGH>, 2313d5fb05eSFabrizio Castro <GIC_SPI 434 IRQ_TYPE_LEVEL_HIGH>, 2323d5fb05eSFabrizio Castro <GIC_SPI 435 IRQ_TYPE_LEVEL_HIGH>, 2333d5fb05eSFabrizio Castro <GIC_SPI 436 IRQ_TYPE_LEVEL_HIGH>, 2343d5fb05eSFabrizio Castro <GIC_SPI 437 IRQ_TYPE_LEVEL_HIGH>, 2353d5fb05eSFabrizio Castro <GIC_SPI 438 IRQ_TYPE_LEVEL_HIGH>, 2363d5fb05eSFabrizio Castro <GIC_SPI 439 IRQ_TYPE_LEVEL_HIGH>, 2373d5fb05eSFabrizio Castro <GIC_SPI 440 IRQ_TYPE_LEVEL_HIGH>, 2383d5fb05eSFabrizio Castro <GIC_SPI 441 IRQ_TYPE_LEVEL_HIGH>, 2393d5fb05eSFabrizio Castro <GIC_SPI 442 IRQ_TYPE_LEVEL_HIGH>, 2403d5fb05eSFabrizio Castro <GIC_SPI 443 IRQ_TYPE_LEVEL_HIGH>, 2413d5fb05eSFabrizio Castro <GIC_SPI 444 IRQ_TYPE_LEVEL_HIGH>, 2423d5fb05eSFabrizio Castro <GIC_SPI 445 IRQ_TYPE_LEVEL_HIGH>, 2433d5fb05eSFabrizio Castro <GIC_SPI 446 IRQ_TYPE_LEVEL_HIGH>, 2443d5fb05eSFabrizio Castro <GIC_SPI 447 IRQ_TYPE_LEVEL_HIGH>, 2453d5fb05eSFabrizio Castro <GIC_SPI 448 IRQ_TYPE_LEVEL_HIGH>, 2463d5fb05eSFabrizio Castro <GIC_SPI 449 IRQ_TYPE_LEVEL_HIGH>, 2473d5fb05eSFabrizio Castro <GIC_SPI 450 IRQ_TYPE_LEVEL_HIGH>, 2483d5fb05eSFabrizio Castro <GIC_SPI 262 IRQ_TYPE_EDGE_RISING>, 2493d5fb05eSFabrizio Castro <GIC_SPI 263 IRQ_TYPE_EDGE_RISING>, 2503d5fb05eSFabrizio Castro <GIC_SPI 264 IRQ_TYPE_EDGE_RISING>, 2513d5fb05eSFabrizio Castro <GIC_SPI 265 IRQ_TYPE_EDGE_RISING>, 2523d5fb05eSFabrizio Castro <GIC_SPI 266 IRQ_TYPE_LEVEL_HIGH>, 2533d5fb05eSFabrizio Castro <GIC_SPI 451 IRQ_TYPE_LEVEL_HIGH>, 2543d5fb05eSFabrizio Castro <GIC_SPI 452 IRQ_TYPE_LEVEL_HIGH>, 2553d5fb05eSFabrizio Castro <GIC_SPI 453 IRQ_TYPE_LEVEL_HIGH>, 2563d5fb05eSFabrizio Castro <GIC_SPI 454 IRQ_TYPE_LEVEL_HIGH>; 2573d5fb05eSFabrizio Castro interrupt-names = "nmi", 2583d5fb05eSFabrizio Castro "port_irq0", "port_irq1", "port_irq2", 2593d5fb05eSFabrizio Castro "port_irq3", "port_irq4", "port_irq5", 2603d5fb05eSFabrizio Castro "port_irq6", "port_irq7", "port_irq8", 2613d5fb05eSFabrizio Castro "port_irq9", "port_irq10", "port_irq11", 2623d5fb05eSFabrizio Castro "port_irq12", "port_irq13", "port_irq14", 2633d5fb05eSFabrizio Castro "port_irq15", 2643d5fb05eSFabrizio Castro "tint0", "tint1", "tint2", "tint3", 2653d5fb05eSFabrizio Castro "tint4", "tint5", "tint6", "tint7", 2663d5fb05eSFabrizio Castro "tint8", "tint9", "tint10", "tint11", 2673d5fb05eSFabrizio Castro "tint12", "tint13", "tint14", "tint15", 2683d5fb05eSFabrizio Castro "tint16", "tint17", "tint18", "tint19", 2693d5fb05eSFabrizio Castro "tint20", "tint21", "tint22", "tint23", 2703d5fb05eSFabrizio Castro "tint24", "tint25", "tint26", "tint27", 2713d5fb05eSFabrizio Castro "tint28", "tint29", "tint30", "tint31", 2723d5fb05eSFabrizio Castro "int-ca55-0", "int-ca55-1", 2733d5fb05eSFabrizio Castro "int-ca55-2", "int-ca55-3", 2743d5fb05eSFabrizio Castro "icu-error-ca55", 2753d5fb05eSFabrizio Castro "gpt-u0-gtciada", "gpt-u0-gtciadb", 2763d5fb05eSFabrizio Castro "gpt-u1-gtciada", "gpt-u1-gtciadb"; 2773d5fb05eSFabrizio Castro clocks = <&cpg CPG_MOD 0x5>; 2783d5fb05eSFabrizio Castro power-domains = <&cpg>; 2793d5fb05eSFabrizio Castro resets = <&cpg 0x36>; 2803d5fb05eSFabrizio Castro }; 281