xref: /linux/Documentation/devicetree/bindings/interrupt-controller/renesas,rza1-irqc.yaml (revision 4b4193256c8d3bc3a5397b5cd9494c2ad386317d)
1*2f6e6e11SGeert Uytterhoeven# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*2f6e6e11SGeert Uytterhoeven%YAML 1.2
3*2f6e6e11SGeert Uytterhoeven---
4*2f6e6e11SGeert Uytterhoeven$id: http://devicetree.org/schemas/interrupt-controller/renesas,rza1-irqc.yaml#
5*2f6e6e11SGeert Uytterhoeven$schema: http://devicetree.org/meta-schemas/core.yaml#
6*2f6e6e11SGeert Uytterhoeven
7*2f6e6e11SGeert Uytterhoeventitle: Renesas RZ/A1 Interrupt Controller
8*2f6e6e11SGeert Uytterhoeven
9*2f6e6e11SGeert Uytterhoevenmaintainers:
10*2f6e6e11SGeert Uytterhoeven  - Chris Brandt <chris.brandt@renesas.com>
11*2f6e6e11SGeert Uytterhoeven  - Geert Uytterhoeven <geert+renesas@glider.be>
12*2f6e6e11SGeert Uytterhoeven
13*2f6e6e11SGeert Uytterhoevendescription: |
14*2f6e6e11SGeert Uytterhoeven  The RZ/A1 Interrupt Controller is a front-end for the GIC found on Renesas RZ/A1 and
15*2f6e6e11SGeert Uytterhoeven  RZ/A2 SoCs:
16*2f6e6e11SGeert Uytterhoeven    - IRQ sense select for 8 external interrupts, 1:1-mapped to 8 GIC SPI interrupts,
17*2f6e6e11SGeert Uytterhoeven    - NMI edge select.
18*2f6e6e11SGeert Uytterhoeven
19*2f6e6e11SGeert UytterhoevenallOf:
20*2f6e6e11SGeert Uytterhoeven  - $ref: /schemas/interrupt-controller.yaml#
21*2f6e6e11SGeert Uytterhoeven
22*2f6e6e11SGeert Uytterhoevenproperties:
23*2f6e6e11SGeert Uytterhoeven  compatible:
24*2f6e6e11SGeert Uytterhoeven    items:
25*2f6e6e11SGeert Uytterhoeven      - enum:
26*2f6e6e11SGeert Uytterhoeven          - renesas,r7s72100-irqc # RZ/A1H
27*2f6e6e11SGeert Uytterhoeven          - renesas,r7s9210-irqc  # RZ/A2M
28*2f6e6e11SGeert Uytterhoeven      - const: renesas,rza1-irqc
29*2f6e6e11SGeert Uytterhoeven
30*2f6e6e11SGeert Uytterhoeven  '#interrupt-cells':
31*2f6e6e11SGeert Uytterhoeven    const: 2
32*2f6e6e11SGeert Uytterhoeven
33*2f6e6e11SGeert Uytterhoeven  '#address-cells':
34*2f6e6e11SGeert Uytterhoeven    const: 0
35*2f6e6e11SGeert Uytterhoeven
36*2f6e6e11SGeert Uytterhoeven  interrupt-controller: true
37*2f6e6e11SGeert Uytterhoeven
38*2f6e6e11SGeert Uytterhoeven  reg:
39*2f6e6e11SGeert Uytterhoeven    maxItems: 1
40*2f6e6e11SGeert Uytterhoeven
41*2f6e6e11SGeert Uytterhoeven  interrupt-map:
42*2f6e6e11SGeert Uytterhoeven    maxItems: 8
43*2f6e6e11SGeert Uytterhoeven    description: Specifies the mapping from external interrupts to GIC interrupts.
44*2f6e6e11SGeert Uytterhoeven
45*2f6e6e11SGeert Uytterhoeven  interrupt-map-mask:
46*2f6e6e11SGeert Uytterhoeven    items:
47*2f6e6e11SGeert Uytterhoeven      - const: 7
48*2f6e6e11SGeert Uytterhoeven      - const: 0
49*2f6e6e11SGeert Uytterhoeven
50*2f6e6e11SGeert Uytterhoevenrequired:
51*2f6e6e11SGeert Uytterhoeven  - compatible
52*2f6e6e11SGeert Uytterhoeven  - '#interrupt-cells'
53*2f6e6e11SGeert Uytterhoeven  - '#address-cells'
54*2f6e6e11SGeert Uytterhoeven  - interrupt-controller
55*2f6e6e11SGeert Uytterhoeven  - reg
56*2f6e6e11SGeert Uytterhoeven  - interrupt-map
57*2f6e6e11SGeert Uytterhoeven  - interrupt-map-mask
58*2f6e6e11SGeert Uytterhoeven
59*2f6e6e11SGeert UytterhoevenadditionalProperties: false
60*2f6e6e11SGeert Uytterhoeven
61*2f6e6e11SGeert Uytterhoevenexamples:
62*2f6e6e11SGeert Uytterhoeven  - |
63*2f6e6e11SGeert Uytterhoeven    #include <dt-bindings/interrupt-controller/arm-gic.h>
64*2f6e6e11SGeert Uytterhoeven    irqc: interrupt-controller@fcfef800 {
65*2f6e6e11SGeert Uytterhoeven            compatible = "renesas,r7s72100-irqc", "renesas,rza1-irqc";
66*2f6e6e11SGeert Uytterhoeven            #interrupt-cells = <2>;
67*2f6e6e11SGeert Uytterhoeven            #address-cells = <0>;
68*2f6e6e11SGeert Uytterhoeven            interrupt-controller;
69*2f6e6e11SGeert Uytterhoeven            reg = <0xfcfef800 0x6>;
70*2f6e6e11SGeert Uytterhoeven            interrupt-map =
71*2f6e6e11SGeert Uytterhoeven                    <0 0 &gic GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
72*2f6e6e11SGeert Uytterhoeven                    <1 0 &gic GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>,
73*2f6e6e11SGeert Uytterhoeven                    <2 0 &gic GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>,
74*2f6e6e11SGeert Uytterhoeven                    <3 0 &gic GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>,
75*2f6e6e11SGeert Uytterhoeven                    <4 0 &gic GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
76*2f6e6e11SGeert Uytterhoeven                    <5 0 &gic GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>,
77*2f6e6e11SGeert Uytterhoeven                    <6 0 &gic GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
78*2f6e6e11SGeert Uytterhoeven                    <7 0 &gic GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
79*2f6e6e11SGeert Uytterhoeven            interrupt-map-mask = <7 0>;
80*2f6e6e11SGeert Uytterhoeven    };
81