diff options
Diffstat (limited to 'dts/upstream/Bindings/interrupt-controller/fsl,imx8qxp-dc-intc.yaml')
| -rw-r--r-- | dts/upstream/Bindings/interrupt-controller/fsl,imx8qxp-dc-intc.yaml | 318 | 
1 files changed, 318 insertions, 0 deletions
| diff --git a/dts/upstream/Bindings/interrupt-controller/fsl,imx8qxp-dc-intc.yaml b/dts/upstream/Bindings/interrupt-controller/fsl,imx8qxp-dc-intc.yaml new file mode 100644 index 00000000000..6985ee644a2 --- /dev/null +++ b/dts/upstream/Bindings/interrupt-controller/fsl,imx8qxp-dc-intc.yaml @@ -0,0 +1,318 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/interrupt-controller/fsl,imx8qxp-dc-intc.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Freescale i.MX8qxp Display Controller interrupt controller + +description: | +  The Display Controller has a built-in interrupt controller with the following +  features for all relevant HW events: + +  * Enable bit (mask) +  * Status bit (set by an HW event) +  * Preset bit (can be used by SW to set status) +  * Clear bit (used by SW to reset the status) + +  Each interrupt can be connected as IRQ (maskable) and/or NMI (non-maskable). +  Alternatively the un-masked trigger signals for all HW events are provided, +  allowing it to use a global interrupt controller instead. + +  Each interrupt can be protected against SW running in user mode. In that case, +  only privileged AHB access can control the interrupt status. + +maintainers: +  - Liu Ying <victor.liu@nxp.com> + +properties: +  compatible: +    const: fsl,imx8qxp-dc-intc + +  reg: +    maxItems: 1 + +  clocks: +    maxItems: 1 + +  interrupt-controller: true + +  "#interrupt-cells": +    const: 1 + +  interrupts: +    items: +      - description: store9 shadow load interrupt(blit engine) +      - description: store9 frame complete interrupt(blit engine) +      - description: store9 sequence complete interrupt(blit engine) +      - description: +          extdst0 shadow load interrupt +          (display controller, content stream 0) +      - description: +          extdst0 frame complete interrupt +          (display controller, content stream 0) +      - description: +          extdst0 sequence complete interrupt +          (display controller, content stream 0) +      - description: +          extdst4 shadow load interrupt +          (display controller, safety stream 0) +      - description: +          extdst4 frame complete interrupt +          (display controller, safety stream 0) +      - description: +          extdst4 sequence complete interrupt +          (display controller, safety stream 0) +      - description: +          extdst1 shadow load interrupt +          (display controller, content stream 1) +      - description: +          extdst1 frame complete interrupt +          (display controller, content stream 1) +      - description: +          extdst1 sequence complete interrupt +          (display controller, content stream 1) +      - description: +          extdst5 shadow load interrupt +          (display controller, safety stream 1) +      - description: +          extdst5 frame complete interrupt +          (display controller, safety stream 1) +      - description: +          extdst5 sequence complete interrupt +          (display controller, safety stream 1) +      - description: +          disengcfg0 shadow load interrupt +          (display controller, display stream 0) +      - description: +          disengcfg0 frame complete interrupt +          (display controller, display stream 0) +      - description: +          disengcfg0 sequence complete interrupt +          (display controller, display stream 0) +      - description: +          framegen0 programmable interrupt0 +          (display controller, display stream 0) +      - description: +          framegen0 programmable interrupt1 +          (display controller, display stream 0) +      - description: +          framegen0 programmable interrupt2 +          (display controller, display stream 0) +      - description: +          framegen0 programmable interrupt3 +          (display controller, display stream 0) +      - description: +          signature0 shadow load interrupt +          (display controller, display stream 0) +      - description: +          signature0 measurement valid interrupt +          (display controller, display stream 0) +      - description: +          signature0 error condition interrupt +          (display controller, display stream 0) +      - description: +          disengcfg1 shadow load interrupt +          (display controller, display stream 1) +      - description: +          disengcfg1 frame complete interrupt +          (display controller, display stream 1) +      - description: +          disengcfg1 sequence complete interrupt +          (display controller, display stream 1) +      - description: +          framegen1 programmable interrupt0 +          (display controller, display stream 1) +      - description: +          framegen1 programmable interrupt1 +          (display controller, display stream 1) +      - description: +          framegen1 programmable interrupt2 +          (display controller, display stream 1) +      - description: +          framegen1 programmable interrupt3 +          (display controller, display stream 1) +      - description: +          signature1 shadow load interrupt +          (display controller, display stream 1) +      - description: +          signature1 measurement valid interrupt +          (display controller, display stream 1) +      - description: +          signature1 error condition interrupt +          (display controller, display stream 1) +      - description: reserved +      - description: +          command sequencer error condition interrupt(command sequencer) +      - description: +          common control software interrupt0(common control) +      - description: +          common control software interrupt1(common control) +      - description: +          common control software interrupt2(common control) +      - description: +          common control software interrupt3(common control) +      - description: +          framegen0 synchronization status activated interrupt +          (display controller, safety stream 0) +      - description: +          framegen0 synchronization status deactivated interrupt +          (display controller, safety stream 0) +      - description: +          framegen0 synchronization status activated interrupt +          (display controller, content stream 0) +      - description: +          framegen0 synchronization status deactivated interrupt +          (display controller, content stream 0) +      - description: +          framegen1 synchronization status activated interrupt +          (display controller, safety stream 1) +      - description: +          framegen1 synchronization status deactivated interrupt +          (display controller, safety stream 1) +      - description: +          framegen1 synchronization status activated interrupt +          (display controller, content stream 1) +      - description: +          framegen1 synchronization status deactivated interrupt +          (display controller, content stream 1) +    minItems: 49 + +  interrupt-names: +    items: +      - const: store9_shdload +      - const: store9_framecomplete +      - const: store9_seqcomplete +      - const: extdst0_shdload +      - const: extdst0_framecomplete +      - const: extdst0_seqcomplete +      - const: extdst4_shdload +      - const: extdst4_framecomplete +      - const: extdst4_seqcomplete +      - const: extdst1_shdload +      - const: extdst1_framecomplete +      - const: extdst1_seqcomplete +      - const: extdst5_shdload +      - const: extdst5_framecomplete +      - const: extdst5_seqcomplete +      - const: disengcfg_shdload0 +      - const: disengcfg_framecomplete0 +      - const: disengcfg_seqcomplete0 +      - const: framegen0_int0 +      - const: framegen0_int1 +      - const: framegen0_int2 +      - const: framegen0_int3 +      - const: sig0_shdload +      - const: sig0_valid +      - const: sig0_error +      - const: disengcfg_shdload1 +      - const: disengcfg_framecomplete1 +      - const: disengcfg_seqcomplete1 +      - const: framegen1_int0 +      - const: framegen1_int1 +      - const: framegen1_int2 +      - const: framegen1_int3 +      - const: sig1_shdload +      - const: sig1_valid +      - const: sig1_error +      - const: reserved +      - const: cmdseq_error +      - const: comctrl_sw0 +      - const: comctrl_sw1 +      - const: comctrl_sw2 +      - const: comctrl_sw3 +      - const: framegen0_primsync_on +      - const: framegen0_primsync_off +      - const: framegen0_secsync_on +      - const: framegen0_secsync_off +      - const: framegen1_primsync_on +      - const: framegen1_primsync_off +      - const: framegen1_secsync_on +      - const: framegen1_secsync_off +    minItems: 49 + +required: +  - compatible +  - reg +  - clocks +  - interrupt-controller +  - "#interrupt-cells" +  - interrupts +  - interrupt-names + +additionalProperties: false + +examples: +  - | +    #include <dt-bindings/clock/imx8-lpcg.h> + +    interrupt-controller@56180040 { +        compatible = "fsl,imx8qxp-dc-intc"; +        reg = <0x56180040 0x60>; +        clocks = <&dc0_lpcg IMX_LPCG_CLK_5>; +        interrupt-controller; +        interrupt-parent = <&dc0_irqsteer>; +        #interrupt-cells = <1>; +        interrupts = <448>, <449>, <450>,  <64>, +                      <65>,  <66>,  <67>,  <68>, +                      <69>,  <70>, <193>, <194>, +                     <195>, <196>, <197>,  <72>, +                      <73>,  <74>,  <75>,  <76>, +                      <77>,  <78>,  <79>,  <80>, +                      <81>, <199>, <200>, <201>, +                     <202>, <203>, <204>, <205>, +                     <206>, <207>, <208>,   <5>, +                       <0>,   <1>,   <2>,   <3>, +                       <4>,  <82>,  <83>,  <84>, +                      <85>, <209>, <210>, <211>, +                     <212>; +        interrupt-names = "store9_shdload", +                          "store9_framecomplete", +                          "store9_seqcomplete", +                          "extdst0_shdload", +                          "extdst0_framecomplete", +                          "extdst0_seqcomplete", +                          "extdst4_shdload", +                          "extdst4_framecomplete", +                          "extdst4_seqcomplete", +                          "extdst1_shdload", +                          "extdst1_framecomplete", +                          "extdst1_seqcomplete", +                          "extdst5_shdload", +                          "extdst5_framecomplete", +                          "extdst5_seqcomplete", +                          "disengcfg_shdload0", +                          "disengcfg_framecomplete0", +                          "disengcfg_seqcomplete0", +                          "framegen0_int0", +                          "framegen0_int1", +                          "framegen0_int2", +                          "framegen0_int3", +                          "sig0_shdload", +                          "sig0_valid", +                          "sig0_error", +                          "disengcfg_shdload1", +                          "disengcfg_framecomplete1", +                          "disengcfg_seqcomplete1", +                          "framegen1_int0", +                          "framegen1_int1", +                          "framegen1_int2", +                          "framegen1_int3", +                          "sig1_shdload", +                          "sig1_valid", +                          "sig1_error", +                          "reserved", +                          "cmdseq_error", +                          "comctrl_sw0", +                          "comctrl_sw1", +                          "comctrl_sw2", +                          "comctrl_sw3", +                          "framegen0_primsync_on", +                          "framegen0_primsync_off", +                          "framegen0_secsync_on", +                          "framegen0_secsync_off", +                          "framegen1_primsync_on", +                          "framegen1_primsync_off", +                          "framegen1_secsync_on", +                          "framegen1_secsync_off"; +    }; | 
