162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0
262306a36Sopenharmony_ci%YAML 1.2
362306a36Sopenharmony_ci---
462306a36Sopenharmony_ci$id: http://devicetree.org/schemas/interrupt-controller/renesas,irqc.yaml#
562306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml#
662306a36Sopenharmony_ci
762306a36Sopenharmony_cititle: R-Mobile/R-Car/RZ/G interrupt controller
862306a36Sopenharmony_ci
962306a36Sopenharmony_cimaintainers:
1062306a36Sopenharmony_ci  - Geert Uytterhoeven <geert+renesas@glider.be>
1162306a36Sopenharmony_ci
1262306a36Sopenharmony_ciproperties:
1362306a36Sopenharmony_ci  compatible:
1462306a36Sopenharmony_ci    items:
1562306a36Sopenharmony_ci      - enum:
1662306a36Sopenharmony_ci          - renesas,irqc-r8a73a4        # R-Mobile APE6
1762306a36Sopenharmony_ci          - renesas,irqc-r8a7742        # RZ/G1H
1862306a36Sopenharmony_ci          - renesas,irqc-r8a7743        # RZ/G1M
1962306a36Sopenharmony_ci          - renesas,irqc-r8a7744        # RZ/G1N
2062306a36Sopenharmony_ci          - renesas,irqc-r8a7745        # RZ/G1E
2162306a36Sopenharmony_ci          - renesas,irqc-r8a77470       # RZ/G1C
2262306a36Sopenharmony_ci          - renesas,irqc-r8a7790        # R-Car H2
2362306a36Sopenharmony_ci          - renesas,irqc-r8a7791        # R-Car M2-W
2462306a36Sopenharmony_ci          - renesas,irqc-r8a7792        # R-Car V2H
2562306a36Sopenharmony_ci          - renesas,irqc-r8a7793        # R-Car M2-N
2662306a36Sopenharmony_ci          - renesas,irqc-r8a7794        # R-Car E2
2762306a36Sopenharmony_ci          - renesas,intc-ex-r8a774a1    # RZ/G2M
2862306a36Sopenharmony_ci          - renesas,intc-ex-r8a774b1    # RZ/G2N
2962306a36Sopenharmony_ci          - renesas,intc-ex-r8a774c0    # RZ/G2E
3062306a36Sopenharmony_ci          - renesas,intc-ex-r8a774e1    # RZ/G2H
3162306a36Sopenharmony_ci          - renesas,intc-ex-r8a7795     # R-Car H3
3262306a36Sopenharmony_ci          - renesas,intc-ex-r8a7796     # R-Car M3-W
3362306a36Sopenharmony_ci          - renesas,intc-ex-r8a77961    # R-Car M3-W+
3462306a36Sopenharmony_ci          - renesas,intc-ex-r8a77965    # R-Car M3-N
3562306a36Sopenharmony_ci          - renesas,intc-ex-r8a77970    # R-Car V3M
3662306a36Sopenharmony_ci          - renesas,intc-ex-r8a77980    # R-Car V3H
3762306a36Sopenharmony_ci          - renesas,intc-ex-r8a77990    # R-Car E3
3862306a36Sopenharmony_ci          - renesas,intc-ex-r8a77995    # R-Car D3
3962306a36Sopenharmony_ci          - renesas,intc-ex-r8a779a0    # R-Car V3U
4062306a36Sopenharmony_ci          - renesas,intc-ex-r8a779f0    # R-Car S4-8
4162306a36Sopenharmony_ci          - renesas,intc-ex-r8a779g0    # R-Car V4H
4262306a36Sopenharmony_ci      - const: renesas,irqc
4362306a36Sopenharmony_ci
4462306a36Sopenharmony_ci  '#interrupt-cells':
4562306a36Sopenharmony_ci    # an interrupt index and flags, as defined in interrupts.txt in
4662306a36Sopenharmony_ci    # this directory
4762306a36Sopenharmony_ci    const: 2
4862306a36Sopenharmony_ci
4962306a36Sopenharmony_ci  interrupt-controller: true
5062306a36Sopenharmony_ci
5162306a36Sopenharmony_ci  reg:
5262306a36Sopenharmony_ci    maxItems: 1
5362306a36Sopenharmony_ci
5462306a36Sopenharmony_ci  interrupts:
5562306a36Sopenharmony_ci    minItems: 1
5662306a36Sopenharmony_ci    maxItems: 32
5762306a36Sopenharmony_ci
5862306a36Sopenharmony_ci  clocks:
5962306a36Sopenharmony_ci    maxItems: 1
6062306a36Sopenharmony_ci
6162306a36Sopenharmony_ci  power-domains:
6262306a36Sopenharmony_ci    maxItems: 1
6362306a36Sopenharmony_ci
6462306a36Sopenharmony_ci  resets:
6562306a36Sopenharmony_ci    maxItems: 1
6662306a36Sopenharmony_ci
6762306a36Sopenharmony_cirequired:
6862306a36Sopenharmony_ci  - compatible
6962306a36Sopenharmony_ci  - '#interrupt-cells'
7062306a36Sopenharmony_ci  - interrupt-controller
7162306a36Sopenharmony_ci  - reg
7262306a36Sopenharmony_ci  - interrupts
7362306a36Sopenharmony_ci  - clocks
7462306a36Sopenharmony_ci
7562306a36Sopenharmony_ciadditionalProperties: false
7662306a36Sopenharmony_ci
7762306a36Sopenharmony_ciexamples:
7862306a36Sopenharmony_ci  - |
7962306a36Sopenharmony_ci    #include <dt-bindings/clock/r8a7790-cpg-mssr.h>
8062306a36Sopenharmony_ci    #include <dt-bindings/interrupt-controller/arm-gic.h>
8162306a36Sopenharmony_ci    #include <dt-bindings/interrupt-controller/irq.h>
8262306a36Sopenharmony_ci
8362306a36Sopenharmony_ci    irqc0: interrupt-controller@e61c0000 {
8462306a36Sopenharmony_ci        compatible = "renesas,irqc-r8a7790", "renesas,irqc";
8562306a36Sopenharmony_ci        #interrupt-cells = <2>;
8662306a36Sopenharmony_ci        interrupt-controller;
8762306a36Sopenharmony_ci        reg = <0xe61c0000 0x200>;
8862306a36Sopenharmony_ci        interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
8962306a36Sopenharmony_ci                     <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>,
9062306a36Sopenharmony_ci                     <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>,
9162306a36Sopenharmony_ci                     <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>;
9262306a36Sopenharmony_ci        clocks = <&cpg CPG_MOD 407>;
9362306a36Sopenharmony_ci    };
94