162306a36Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
262306a36Sopenharmony_ci%YAML 1.2
362306a36Sopenharmony_ci---
462306a36Sopenharmony_ci$id: http://devicetree.org/schemas/interrupt-controller/st,stih407-irq-syscfg.yaml#
562306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml#
662306a36Sopenharmony_ci
762306a36Sopenharmony_cititle: STMicroelectronics STi System Configuration Controlled IRQs
862306a36Sopenharmony_ci
962306a36Sopenharmony_cimaintainers:
1062306a36Sopenharmony_ci  - Patrice Chotard <patrice.chotard@foss.st.com>
1162306a36Sopenharmony_ci
1262306a36Sopenharmony_cidescription:
1362306a36Sopenharmony_ci  On STi based systems; External, CTI (Core Sight), PMU (Performance
1462306a36Sopenharmony_ci  Management), and PL310 L2 Cache IRQs are controlled using System
1562306a36Sopenharmony_ci  Configuration registers.  This device is used to unmask them prior to use.
1662306a36Sopenharmony_ci
1762306a36Sopenharmony_ciproperties:
1862306a36Sopenharmony_ci  compatible:
1962306a36Sopenharmony_ci    const: st,stih407-irq-syscfg
2062306a36Sopenharmony_ci
2162306a36Sopenharmony_ci  st,syscfg:
2262306a36Sopenharmony_ci    description: Phandle to Cortex-A9 IRQ system config registers
2362306a36Sopenharmony_ci    $ref: /schemas/types.yaml#/definitions/phandle
2462306a36Sopenharmony_ci
2562306a36Sopenharmony_ci  st,irq-device:
2662306a36Sopenharmony_ci    description: Array of IRQs to enable.
2762306a36Sopenharmony_ci    $ref: /schemas/types.yaml#/definitions/uint32-array
2862306a36Sopenharmony_ci    items:
2962306a36Sopenharmony_ci      - description: Enable the IRQ of the channel one.
3062306a36Sopenharmony_ci      - description: Enable the IRQ of the channel two.
3162306a36Sopenharmony_ci
3262306a36Sopenharmony_ci  st,fiq-device:
3362306a36Sopenharmony_ci    description: Array of FIQs to enable.
3462306a36Sopenharmony_ci    $ref: /schemas/types.yaml#/definitions/uint32-array
3562306a36Sopenharmony_ci    items:
3662306a36Sopenharmony_ci      - description: Enable the IRQ of the channel one.
3762306a36Sopenharmony_ci      - description: Enable the IRQ of the channel two.
3862306a36Sopenharmony_ci
3962306a36Sopenharmony_ci  st,invert-ext:
4062306a36Sopenharmony_ci    description: External IRQs can be inverted at will. This property inverts
4162306a36Sopenharmony_ci      these three IRQs using bitwise logic, each one being encoded respectively
4262306a36Sopenharmony_ci      on the first, second and fourth bit.
4362306a36Sopenharmony_ci    $ref: /schemas/types.yaml#/definitions/uint32
4462306a36Sopenharmony_ci    enum: [ 1, 2, 3, 4, 5, 6 ]
4562306a36Sopenharmony_ci
4662306a36Sopenharmony_cirequired:
4762306a36Sopenharmony_ci  - compatible
4862306a36Sopenharmony_ci  - st,syscfg
4962306a36Sopenharmony_ci  - st,irq-device
5062306a36Sopenharmony_ci  - st,fiq-device
5162306a36Sopenharmony_ci
5262306a36Sopenharmony_ciadditionalProperties: false
5362306a36Sopenharmony_ci
5462306a36Sopenharmony_ciexamples:
5562306a36Sopenharmony_ci  - |
5662306a36Sopenharmony_ci    #include <dt-bindings/interrupt-controller/irq-st.h>
5762306a36Sopenharmony_ci    irq-syscfg {
5862306a36Sopenharmony_ci        compatible    = "st,stih407-irq-syscfg";
5962306a36Sopenharmony_ci        st,syscfg     = <&syscfg_cpu>;
6062306a36Sopenharmony_ci        st,irq-device = <ST_IRQ_SYSCFG_PMU_0>,
6162306a36Sopenharmony_ci                        <ST_IRQ_SYSCFG_PMU_1>;
6262306a36Sopenharmony_ci        st,fiq-device = <ST_IRQ_SYSCFG_DISABLED>,
6362306a36Sopenharmony_ci                        <ST_IRQ_SYSCFG_DISABLED>;
6462306a36Sopenharmony_ci    };
6562306a36Sopenharmony_ci...
66