xref: /linux/Documentation/devicetree/bindings/interrupt-controller/renesas,intc-irqpin.yaml (revision 4b4193256c8d3bc3a5397b5cd9494c2ad386317d)
1*0be4ae74SYoshihiro Kaneko# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*0be4ae74SYoshihiro Kaneko%YAML 1.2
3*0be4ae74SYoshihiro Kaneko---
4*0be4ae74SYoshihiro Kaneko$id: http://devicetree.org/schemas/interrupt-controller/renesas,intc-irqpin.yaml#
5*0be4ae74SYoshihiro Kaneko$schema: http://devicetree.org/meta-schemas/core.yaml#
6*0be4ae74SYoshihiro Kaneko
7*0be4ae74SYoshihiro Kanekotitle: Renesas Interrupt Controller (INTC) for external pins
8*0be4ae74SYoshihiro Kaneko
9*0be4ae74SYoshihiro Kanekomaintainers:
10*0be4ae74SYoshihiro Kaneko  - Geert Uytterhoeven <geert+renesas@glider.be>
11*0be4ae74SYoshihiro Kaneko
12*0be4ae74SYoshihiro Kanekoproperties:
13*0be4ae74SYoshihiro Kaneko  compatible:
14*0be4ae74SYoshihiro Kaneko    items:
15*0be4ae74SYoshihiro Kaneko      - enum:
16*0be4ae74SYoshihiro Kaneko          - renesas,intc-irqpin-r8a7740  # R-Mobile A1
17*0be4ae74SYoshihiro Kaneko          - renesas,intc-irqpin-r8a7778  # R-Car M1A
18*0be4ae74SYoshihiro Kaneko          - renesas,intc-irqpin-r8a7779  # R-Car H1
19*0be4ae74SYoshihiro Kaneko          - renesas,intc-irqpin-sh73a0   # SH-Mobile AG5
20*0be4ae74SYoshihiro Kaneko      - const: renesas,intc-irqpin
21*0be4ae74SYoshihiro Kaneko
22*0be4ae74SYoshihiro Kaneko  reg:
23*0be4ae74SYoshihiro Kaneko    minItems: 5
24*0be4ae74SYoshihiro Kaneko    items:
25*0be4ae74SYoshihiro Kaneko      - description: Interrupt control register
26*0be4ae74SYoshihiro Kaneko      - description: Interrupt priority register
27*0be4ae74SYoshihiro Kaneko      - description: Interrupt source register
28*0be4ae74SYoshihiro Kaneko      - description: Interrupt mask register
29*0be4ae74SYoshihiro Kaneko      - description: Interrupt mask clear register
30*0be4ae74SYoshihiro Kaneko      - description: Interrupt control register for ICR0 with IRLM0 bit
31*0be4ae74SYoshihiro Kaneko
32*0be4ae74SYoshihiro Kaneko  interrupt-controller: true
33*0be4ae74SYoshihiro Kaneko
34*0be4ae74SYoshihiro Kaneko  '#interrupt-cells':
35*0be4ae74SYoshihiro Kaneko    const: 2
36*0be4ae74SYoshihiro Kaneko
37*0be4ae74SYoshihiro Kaneko  interrupts:
38*0be4ae74SYoshihiro Kaneko    minItems: 1
39*0be4ae74SYoshihiro Kaneko    maxItems: 8
40*0be4ae74SYoshihiro Kaneko
41*0be4ae74SYoshihiro Kaneko  sense-bitfield-width:
42*0be4ae74SYoshihiro Kaneko    $ref: /schemas/types.yaml#/definitions/uint32
43*0be4ae74SYoshihiro Kaneko    enum: [2, 4]
44*0be4ae74SYoshihiro Kaneko    default: 4
45*0be4ae74SYoshihiro Kaneko    description:
46*0be4ae74SYoshihiro Kaneko      Width of a single sense bitfield in the SENSE register, if different from the
47*0be4ae74SYoshihiro Kaneko      default.
48*0be4ae74SYoshihiro Kaneko
49*0be4ae74SYoshihiro Kaneko  control-parent:
50*0be4ae74SYoshihiro Kaneko    type: boolean
51*0be4ae74SYoshihiro Kaneko    description:
52*0be4ae74SYoshihiro Kaneko      Disable and enable interrupts on the parent interrupt controller, needed for some
53*0be4ae74SYoshihiro Kaneko      broken implementations.
54*0be4ae74SYoshihiro Kaneko
55*0be4ae74SYoshihiro Kaneko  clocks:
56*0be4ae74SYoshihiro Kaneko    maxItems: 1
57*0be4ae74SYoshihiro Kaneko
58*0be4ae74SYoshihiro Kaneko  power-domains:
59*0be4ae74SYoshihiro Kaneko    maxItems: 1
60*0be4ae74SYoshihiro Kaneko
61*0be4ae74SYoshihiro Kanekorequired:
62*0be4ae74SYoshihiro Kaneko  - compatible
63*0be4ae74SYoshihiro Kaneko  - reg
64*0be4ae74SYoshihiro Kaneko  - interrupt-controller
65*0be4ae74SYoshihiro Kaneko  - '#interrupt-cells'
66*0be4ae74SYoshihiro Kaneko  - interrupts
67*0be4ae74SYoshihiro Kaneko
68*0be4ae74SYoshihiro Kanekoif:
69*0be4ae74SYoshihiro Kaneko  properties:
70*0be4ae74SYoshihiro Kaneko    compatible:
71*0be4ae74SYoshihiro Kaneko      contains:
72*0be4ae74SYoshihiro Kaneko        enum:
73*0be4ae74SYoshihiro Kaneko          - renesas,intc-irqpin-r8a7740
74*0be4ae74SYoshihiro Kaneko          - renesas,intc-irqpin-sh73a0
75*0be4ae74SYoshihiro Kanekothen:
76*0be4ae74SYoshihiro Kaneko  required:
77*0be4ae74SYoshihiro Kaneko    - clocks
78*0be4ae74SYoshihiro Kaneko    - power-domains
79*0be4ae74SYoshihiro Kaneko
80*0be4ae74SYoshihiro KanekoadditionalProperties: false
81*0be4ae74SYoshihiro Kaneko
82*0be4ae74SYoshihiro Kanekoexamples:
83*0be4ae74SYoshihiro Kaneko  - |
84*0be4ae74SYoshihiro Kaneko    #include <dt-bindings/clock/r8a7740-clock.h>
85*0be4ae74SYoshihiro Kaneko    #include <dt-bindings/interrupt-controller/arm-gic.h>
86*0be4ae74SYoshihiro Kaneko    #include <dt-bindings/interrupt-controller/irq.h>
87*0be4ae74SYoshihiro Kaneko
88*0be4ae74SYoshihiro Kaneko    irqpin1: interrupt-controller@e6900004 {
89*0be4ae74SYoshihiro Kaneko        compatible = "renesas,intc-irqpin-r8a7740", "renesas,intc-irqpin";
90*0be4ae74SYoshihiro Kaneko        reg = <0xe6900004 4>,
91*0be4ae74SYoshihiro Kaneko              <0xe6900014 4>,
92*0be4ae74SYoshihiro Kaneko              <0xe6900024 1>,
93*0be4ae74SYoshihiro Kaneko              <0xe6900044 1>,
94*0be4ae74SYoshihiro Kaneko              <0xe6900064 1>;
95*0be4ae74SYoshihiro Kaneko        interrupt-controller;
96*0be4ae74SYoshihiro Kaneko        #interrupt-cells = <2>;
97*0be4ae74SYoshihiro Kaneko        interrupts = <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>,
98*0be4ae74SYoshihiro Kaneko                     <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>,
99*0be4ae74SYoshihiro Kaneko                     <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>,
100*0be4ae74SYoshihiro Kaneko                     <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>,
101*0be4ae74SYoshihiro Kaneko                     <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>,
102*0be4ae74SYoshihiro Kaneko                     <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>,
103*0be4ae74SYoshihiro Kaneko                     <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>,
104*0be4ae74SYoshihiro Kaneko                     <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>;
105*0be4ae74SYoshihiro Kaneko        clocks = <&mstp2_clks R8A7740_CLK_INTCA>;
106*0be4ae74SYoshihiro Kaneko        power-domains = <&pd_a4s>;
107*0be4ae74SYoshihiro Kaneko    };
108