2019-11-15 19:12:39 +01:00
|
|
|
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
|
|
|
%YAML 1.2
|
|
|
|
---
|
|
|
|
$id: http://devicetree.org/schemas/interrupt-controller/st,stm32-exti.yaml#
|
|
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
|
2022-08-25 04:04:27 +02:00
|
|
|
title: STM32 External Interrupt Controller
|
2019-11-15 19:12:39 +01:00
|
|
|
|
|
|
|
maintainers:
|
2021-11-10 16:01:44 +01:00
|
|
|
- Alexandre Torgue <alexandre.torgue@foss.st.com>
|
|
|
|
- Ludovic Barre <ludovic.barre@foss.st.com>
|
2019-11-15 19:12:39 +01:00
|
|
|
|
|
|
|
properties:
|
|
|
|
compatible:
|
|
|
|
oneOf:
|
|
|
|
- items:
|
2020-04-15 19:55:48 -05:00
|
|
|
- enum:
|
|
|
|
- st,stm32-exti
|
|
|
|
- st,stm32h7-exti
|
2019-11-15 19:12:39 +01:00
|
|
|
- items:
|
2020-04-15 19:55:48 -05:00
|
|
|
- enum:
|
|
|
|
- st,stm32mp1-exti
|
2022-02-02 15:00:03 +01:00
|
|
|
- st,stm32mp13-exti
|
2020-04-15 19:55:48 -05:00
|
|
|
- const: syscon
|
2019-11-15 19:12:39 +01:00
|
|
|
|
|
|
|
"#interrupt-cells":
|
|
|
|
const: 2
|
|
|
|
|
|
|
|
reg:
|
|
|
|
maxItems: 1
|
|
|
|
|
|
|
|
interrupt-controller: true
|
|
|
|
|
|
|
|
hwlocks:
|
|
|
|
maxItems: 1
|
|
|
|
description:
|
|
|
|
Reference to a phandle of a hardware spinlock provider node.
|
|
|
|
|
|
|
|
interrupts:
|
2021-01-04 16:02:53 -07:00
|
|
|
minItems: 1
|
|
|
|
maxItems: 96
|
2019-11-15 19:12:39 +01:00
|
|
|
description:
|
|
|
|
Interrupts references to primary interrupt controller
|
|
|
|
|
|
|
|
required:
|
|
|
|
- "#interrupt-cells"
|
|
|
|
- compatible
|
|
|
|
- reg
|
|
|
|
- interrupt-controller
|
|
|
|
|
|
|
|
allOf:
|
|
|
|
- $ref: /schemas/interrupt-controller.yaml#
|
|
|
|
- if:
|
|
|
|
properties:
|
|
|
|
compatible:
|
|
|
|
contains:
|
|
|
|
enum:
|
|
|
|
- st,stm32-exti
|
|
|
|
then:
|
|
|
|
properties:
|
|
|
|
interrupts:
|
|
|
|
minItems: 1
|
|
|
|
maxItems: 32
|
|
|
|
required:
|
|
|
|
- interrupts
|
|
|
|
- if:
|
|
|
|
properties:
|
|
|
|
compatible:
|
|
|
|
contains:
|
|
|
|
enum:
|
|
|
|
- st,stm32h7-exti
|
|
|
|
then:
|
|
|
|
properties:
|
|
|
|
interrupts:
|
|
|
|
minItems: 1
|
|
|
|
maxItems: 96
|
|
|
|
required:
|
|
|
|
- interrupts
|
|
|
|
|
|
|
|
additionalProperties: false
|
|
|
|
|
|
|
|
examples:
|
|
|
|
- |
|
|
|
|
//Example 1
|
|
|
|
exti1: interrupt-controller@5000d000 {
|
|
|
|
compatible = "st,stm32mp1-exti", "syscon";
|
|
|
|
interrupt-controller;
|
|
|
|
#interrupt-cells = <2>;
|
|
|
|
reg = <0x5000d000 0x400>;
|
|
|
|
};
|
|
|
|
|
2024-04-15 15:49:17 +02:00
|
|
|
- |
|
2019-11-15 19:12:39 +01:00
|
|
|
//Example 2
|
2024-04-15 15:49:17 +02:00
|
|
|
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
|
|
|
exti2: interrupt-controller@5000d000 {
|
|
|
|
compatible = "st,stm32mp1-exti", "syscon";
|
|
|
|
interrupt-controller;
|
|
|
|
#interrupt-cells = <2>;
|
|
|
|
reg = <0x5000d000 0x400>;
|
|
|
|
interrupts-extended =
|
|
|
|
<&intc GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
|
|
|
|
<0>,
|
|
|
|
<&intc GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
|
|
|
|
};
|
|
|
|
|
|
|
|
- |
|
|
|
|
//Example 3
|
|
|
|
exti3: interrupt-controller@40013c00 {
|
2019-11-15 19:12:39 +01:00
|
|
|
compatible = "st,stm32-exti";
|
|
|
|
interrupt-controller;
|
|
|
|
#interrupt-cells = <2>;
|
|
|
|
reg = <0x40013C00 0x400>;
|
|
|
|
interrupts = <1>, <2>, <3>, <6>, <7>, <8>, <9>, <10>, <23>, <40>, <41>, <42>, <62>, <76>;
|
|
|
|
};
|
|
|
|
|
|
|
|
...
|