# 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

maintainers:
  - Alexandre Torgue <alexandre.torgue@foss.st.com>
  - Ludovic Barre <ludovic.barre@foss.st.com>

properties:
  compatible:
    oneOf:
      - items:
          - enum:
              - st,stm32-exti
              - st,stm32h7-exti
      - items:
          - enum:
              - st,stm32mp1-exti
              - st,stm32mp13-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:
    minItems: 1
    maxItems: 96
    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
    #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 {
        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>;
    };

...
