blob: 00c10a8258f138e94e089f464b8d5b293e74cf6c [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/interrupt-controller/st,stm32-exti.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: STM32 External Interrupt Controller
8
9maintainers:
10 - Alexandre Torgue <alexandre.torgue@foss.st.com>
11 - Ludovic Barre <ludovic.barre@foss.st.com>
12
13properties:
14 compatible:
15 oneOf:
16 - items:
17 - enum:
18 - st,stm32-exti
19 - st,stm32h7-exti
20 - items:
21 - enum:
22 - st,stm32mp1-exti
23 - st,stm32mp13-exti
24 - const: syscon
25
26 "#interrupt-cells":
27 const: 2
28
29 reg:
30 maxItems: 1
31
32 interrupt-controller: true
33
34 hwlocks:
35 maxItems: 1
36 description:
37 Reference to a phandle of a hardware spinlock provider node.
38
39 interrupts:
40 minItems: 1
41 maxItems: 96
42 description:
43 Interrupts references to primary interrupt controller
44
45required:
46 - "#interrupt-cells"
47 - compatible
48 - reg
49 - interrupt-controller
50
51allOf:
52 - $ref: /schemas/interrupt-controller.yaml#
53 - if:
54 properties:
55 compatible:
56 contains:
57 enum:
58 - st,stm32-exti
59 then:
60 properties:
61 interrupts:
62 minItems: 1
63 maxItems: 32
64 required:
65 - interrupts
66 - if:
67 properties:
68 compatible:
69 contains:
70 enum:
71 - st,stm32h7-exti
72 then:
73 properties:
74 interrupts:
75 minItems: 1
76 maxItems: 96
77 required:
78 - interrupts
79
80additionalProperties: false
81
82examples:
83 - |
84 //Example 1
85 exti1: interrupt-controller@5000d000 {
86 compatible = "st,stm32mp1-exti", "syscon";
87 interrupt-controller;
88 #interrupt-cells = <2>;
89 reg = <0x5000d000 0x400>;
90 };
91
92 //Example 2
93 exti2: interrupt-controller@40013c00 {
94 compatible = "st,stm32-exti";
95 interrupt-controller;
96 #interrupt-cells = <2>;
97 reg = <0x40013C00 0x400>;
98 interrupts = <1>, <2>, <3>, <6>, <7>, <8>, <9>, <10>, <23>, <40>, <41>, <42>, <62>, <76>;
99 };
100
101...