dt-bindings: interrupt-controller: Convert stm32-exti to json-schema
Convert the STM32 external interrupt controller (EXTI) binding to DT schema format using json-schema. Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com> Signed-off-by: Rob Herring <robh@kernel.org>
This commit is contained in:
parent
ceced4acb0
commit
b9da2fcc5e
|
@ -1,29 +0,0 @@
|
||||||
STM32 External Interrupt Controller
|
|
||||||
|
|
||||||
Required properties:
|
|
||||||
|
|
||||||
- compatible: Should be:
|
|
||||||
"st,stm32-exti"
|
|
||||||
"st,stm32h7-exti"
|
|
||||||
"st,stm32mp1-exti"
|
|
||||||
- reg: Specifies base physical address and size of the registers
|
|
||||||
- interrupt-controller: Indentifies the node as an interrupt controller
|
|
||||||
- #interrupt-cells: Specifies the number of cells to encode an interrupt
|
|
||||||
specifier, shall be 2
|
|
||||||
- interrupts: interrupts references to primary interrupt controller
|
|
||||||
(only needed for exti controller with multiple exti under
|
|
||||||
same parent interrupt: st,stm32-exti and st,stm32h7-exti)
|
|
||||||
|
|
||||||
Optional properties:
|
|
||||||
|
|
||||||
- hwlocks: reference to a phandle of a hardware spinlock provider node.
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
exti: interrupt-controller@40013c00 {
|
|
||||||
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>;
|
|
||||||
};
|
|
|
@ -0,0 +1,98 @@
|
||||||
|
# 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#
|
||||||
|
|
||||||
|
title: STM32 External Interrupt Controller Device Tree Bindings
|
||||||
|
|
||||||
|
maintainers:
|
||||||
|
- Alexandre Torgue <alexandre.torgue@st.com>
|
||||||
|
- Ludovic Barre <ludovic.barre@st.com>
|
||||||
|
|
||||||
|
properties:
|
||||||
|
compatible:
|
||||||
|
oneOf:
|
||||||
|
- items:
|
||||||
|
- enum:
|
||||||
|
- st,stm32-exti
|
||||||
|
- st,stm32h7-exti
|
||||||
|
- items:
|
||||||
|
- enum:
|
||||||
|
- st,stm32mp1-exti
|
||||||
|
- const: syscon
|
||||||
|
|
||||||
|
"#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:
|
||||||
|
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>;
|
||||||
|
};
|
||||||
|
|
||||||
|
//Example 2
|
||||||
|
exti2: interrupt-controller@40013c00 {
|
||||||
|
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>;
|
||||||
|
};
|
||||||
|
|
||||||
|
...
|
Loading…
Reference in New Issue