162306a36Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
262306a36Sopenharmony_ci%YAML 1.2
362306a36Sopenharmony_ci---
462306a36Sopenharmony_ci$id: http://devicetree.org/schemas/interrupt-controller/renesas,rza1-irqc.yaml#
562306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml#
662306a36Sopenharmony_ci
762306a36Sopenharmony_cititle: Renesas RZ/A1 Interrupt Controller
862306a36Sopenharmony_ci
962306a36Sopenharmony_cimaintainers:
1062306a36Sopenharmony_ci  - Chris Brandt <chris.brandt@renesas.com>
1162306a36Sopenharmony_ci  - Geert Uytterhoeven <geert+renesas@glider.be>
1262306a36Sopenharmony_ci
1362306a36Sopenharmony_cidescription: |
1462306a36Sopenharmony_ci  The RZ/A1 Interrupt Controller is a front-end for the GIC found on Renesas RZ/A1 and
1562306a36Sopenharmony_ci  RZ/A2 SoCs:
1662306a36Sopenharmony_ci    - IRQ sense select for 8 external interrupts, 1:1-mapped to 8 GIC SPI interrupts,
1762306a36Sopenharmony_ci    - NMI edge select.
1862306a36Sopenharmony_ci
1962306a36Sopenharmony_ciallOf:
2062306a36Sopenharmony_ci  - $ref: /schemas/interrupt-controller.yaml#
2162306a36Sopenharmony_ci
2262306a36Sopenharmony_ciproperties:
2362306a36Sopenharmony_ci  compatible:
2462306a36Sopenharmony_ci    items:
2562306a36Sopenharmony_ci      - enum:
2662306a36Sopenharmony_ci          - renesas,r7s72100-irqc # RZ/A1H
2762306a36Sopenharmony_ci          - renesas,r7s9210-irqc  # RZ/A2M
2862306a36Sopenharmony_ci      - const: renesas,rza1-irqc
2962306a36Sopenharmony_ci
3062306a36Sopenharmony_ci  '#interrupt-cells':
3162306a36Sopenharmony_ci    const: 2
3262306a36Sopenharmony_ci
3362306a36Sopenharmony_ci  '#address-cells':
3462306a36Sopenharmony_ci    const: 0
3562306a36Sopenharmony_ci
3662306a36Sopenharmony_ci  interrupt-controller: true
3762306a36Sopenharmony_ci
3862306a36Sopenharmony_ci  reg:
3962306a36Sopenharmony_ci    maxItems: 1
4062306a36Sopenharmony_ci
4162306a36Sopenharmony_ci  interrupt-map:
4262306a36Sopenharmony_ci    maxItems: 8
4362306a36Sopenharmony_ci    description: Specifies the mapping from external interrupts to GIC interrupts.
4462306a36Sopenharmony_ci
4562306a36Sopenharmony_ci  interrupt-map-mask:
4662306a36Sopenharmony_ci    items:
4762306a36Sopenharmony_ci      - const: 7
4862306a36Sopenharmony_ci      - const: 0
4962306a36Sopenharmony_ci
5062306a36Sopenharmony_cirequired:
5162306a36Sopenharmony_ci  - compatible
5262306a36Sopenharmony_ci  - '#interrupt-cells'
5362306a36Sopenharmony_ci  - '#address-cells'
5462306a36Sopenharmony_ci  - interrupt-controller
5562306a36Sopenharmony_ci  - reg
5662306a36Sopenharmony_ci  - interrupt-map
5762306a36Sopenharmony_ci  - interrupt-map-mask
5862306a36Sopenharmony_ci
5962306a36Sopenharmony_ciadditionalProperties: false
6062306a36Sopenharmony_ci
6162306a36Sopenharmony_ciexamples:
6262306a36Sopenharmony_ci  - |
6362306a36Sopenharmony_ci    #include <dt-bindings/interrupt-controller/arm-gic.h>
6462306a36Sopenharmony_ci    irqc: interrupt-controller@fcfef800 {
6562306a36Sopenharmony_ci            compatible = "renesas,r7s72100-irqc", "renesas,rza1-irqc";
6662306a36Sopenharmony_ci            #interrupt-cells = <2>;
6762306a36Sopenharmony_ci            #address-cells = <0>;
6862306a36Sopenharmony_ci            interrupt-controller;
6962306a36Sopenharmony_ci            reg = <0xfcfef800 0x6>;
7062306a36Sopenharmony_ci            interrupt-map =
7162306a36Sopenharmony_ci                    <0 0 &gic GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
7262306a36Sopenharmony_ci                    <1 0 &gic GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>,
7362306a36Sopenharmony_ci                    <2 0 &gic GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>,
7462306a36Sopenharmony_ci                    <3 0 &gic GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>,
7562306a36Sopenharmony_ci                    <4 0 &gic GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
7662306a36Sopenharmony_ci                    <5 0 &gic GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>,
7762306a36Sopenharmony_ci                    <6 0 &gic GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
7862306a36Sopenharmony_ci                    <7 0 &gic GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
7962306a36Sopenharmony_ci            interrupt-map-mask = <7 0>;
8062306a36Sopenharmony_ci    };
81