Documentation / devicetree / bindings / display / imx / fsl,imx8qxp-dc-display-engine.yaml


Based on kernel version 6.17. Page generated on 2025-10-03 10:04 EST.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/display/imx/fsl,imx8qxp-dc-display-engine.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Freescale i.MX8qxp Display Controller Display Engine

description:
  All Processing Units that operate in a display clock domain. Pixel pipeline
  is driven by a video timing and cannot be stalled. Implements all display
  specific processing.

maintainers:
  - Liu Ying <victor.liu@nxp.com>

properties:
  compatible:
    const: fsl,imx8qxp-dc-display-engine

  reg:
    maxItems: 2

  reg-names:
    items:
      - const: top
      - const: cfg

  resets:
    maxItems: 1

  interrupts:
    maxItems: 3

  interrupt-names:
    items:
      - const: shdload
      - const: framecomplete
      - const: seqcomplete

  power-domains:
    maxItems: 1
 
  "#address-cells":
    const: 1
 
  "#size-cells":
    const: 1

  ranges: true

patternProperties:
  "^dither@[0-9a-f]+$":
    type: object
    additionalProperties: true

    properties:
      compatible:
        const: fsl,imx8qxp-dc-dither
 
  "^framegen@[0-9a-f]+$":
    type: object
    additionalProperties: true

    properties:
      compatible:
        const: fsl,imx8qxp-dc-framegen
 
  "^gammacor@[0-9a-f]+$":
    type: object
    additionalProperties: true

    properties:
      compatible:
        const: fsl,imx8qxp-dc-gammacor
 
  "^matrix@[0-9a-f]+$":
    type: object
    additionalProperties: true

    properties:
      compatible:
        const: fsl,imx8qxp-dc-matrix
 
  "^signature@[0-9a-f]+$":
    type: object
    additionalProperties: true

    properties:
      compatible:
        const: fsl,imx8qxp-dc-signature
 
  "^tcon@[0-9a-f]+$":
    type: object
    additionalProperties: true

    properties:
      compatible:
        const: fsl,imx8qxp-dc-tcon

required:
  - compatible
  - reg
  - reg-names
  - interrupts
  - interrupt-names
  - power-domains
  - "#address-cells"
  - "#size-cells"
  - ranges

additionalProperties: false

examples:
  - |
    #include <dt-bindings/clock/imx8-lpcg.h>
    #include <dt-bindings/firmware/imx/rsrc.h>
 
    display-engine@5618b400 {
        compatible = "fsl,imx8qxp-dc-display-engine";
        reg = <0x5618b400 0x14>, <0x5618b800 0x1c00>;
        reg-names = "top", "cfg";
        interrupt-parent = <&dc0_intc>;
        interrupts = <15>, <16>, <17>;
        interrupt-names = "shdload", "framecomplete", "seqcomplete";
        power-domains = <&pd IMX_SC_R_DC_0_PLL_0>;
        #address-cells = <1>;
        #size-cells = <1>;
        ranges;
 
        framegen@5618b800 {
            compatible = "fsl,imx8qxp-dc-framegen";
            reg = <0x5618b800 0x98>;
            clocks = <&dc0_disp_lpcg IMX_LPCG_CLK_0>;
            interrupt-parent = <&dc0_intc>;
            interrupts = <18>, <19>, <20>, <21>, <41>, <42>, <43>, <44>;
            interrupt-names = "int0", "int1", "int2", "int3",
                              "primsync_on", "primsync_off",
                              "secsync_on", "secsync_off";
        };
 
        tcon@5618c800 {
            compatible = "fsl,imx8qxp-dc-tcon";
            reg = <0x5618c800 0x588>;
 
            port {
                dc0_disp0_dc0_pixel_combiner_ch0: endpoint {
                    remote-endpoint = <&dc0_pixel_combiner_ch0_dc0_disp0>;
                };
            };
        };
    };