202 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/display/fsl,lcdif.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Freescale/NXP i.MX LCD Interface (LCDIF)8 9maintainers:10 - Marek Vasut <marex@denx.de>11 - Stefan Agner <stefan@agner.ch>12 13description: |14 (e)LCDIF display controller found in the Freescale/NXP i.MX SoCs.15 16properties:17 compatible:18 oneOf:19 - enum:20 - fsl,imx23-lcdif21 - fsl,imx28-lcdif22 - fsl,imx6sx-lcdif23 - fsl,imx8mp-lcdif24 - fsl,imx93-lcdif25 - items:26 - enum:27 - fsl,imx6sl-lcdif28 - fsl,imx6sll-lcdif29 - fsl,imx6ul-lcdif30 - fsl,imx7d-lcdif31 - fsl,imx8mm-lcdif32 - fsl,imx8mn-lcdif33 - fsl,imx8mq-lcdif34 - const: fsl,imx6sx-lcdif35 36 reg:37 maxItems: 138 39 clocks:40 items:41 - description: Pixel clock42 - description: Bus clock43 - description: Display AXI clock44 minItems: 145 46 clock-names:47 items:48 - const: pix49 - const: axi50 - const: disp_axi51 minItems: 152 53 dmas:54 items:55 - description: DMA specifier for the RX DMA channel.56 57 dma-names:58 items:59 - const: rx60 61 interrupts:62 items:63 - description: LCDIF DMA interrupt64 - description: LCDIF Error interrupt65 minItems: 166 67 power-domains:68 maxItems: 169 70 port:71 $ref: /schemas/graph.yaml#/properties/port72 description: The LCDIF output port73 74required:75 - compatible76 - reg77 - clocks78 - interrupts79 - port80 81additionalProperties: false82 83allOf:84 - if:85 properties:86 compatible:87 contains:88 const: fsl,imx6sx-lcdif89 then:90 properties:91 clocks:92 minItems: 293 maxItems: 394 clock-names:95 minItems: 296 maxItems: 397 required:98 - clock-names99 - if:100 properties:101 compatible:102 contains:103 enum:104 - fsl,imx8mp-lcdif105 - fsl,imx93-lcdif106 then:107 properties:108 clocks:109 minItems: 3110 maxItems: 3111 clock-names:112 minItems: 3113 maxItems: 3114 required:115 - clock-names116 - if:117 not:118 properties:119 compatible:120 contains:121 enum:122 - fsl,imx6sx-lcdif123 - fsl,imx8mp-lcdif124 - fsl,imx93-lcdif125 then:126 properties:127 clocks:128 maxItems: 1129 clock-names:130 maxItems: 1131 - if:132 properties:133 compatible:134 const: fsl,imx6sx-lcdif135 then:136 required:137 - power-domains138 - if:139 properties:140 compatible:141 contains:142 enum:143 - fsl,imx6sl-lcdif144 - fsl,imx8mm-lcdif145 - fsl,imx8mn-lcdif146 - fsl,imx8mp-lcdif147 - fsl,imx93-lcdif148 then:149 required:150 - power-domains151 - if:152 properties:153 compatible:154 contains:155 enum:156 - fsl,imx23-lcdif157 then:158 properties:159 interrupts:160 minItems: 2161 maxItems: 2162 else:163 properties:164 interrupts:165 maxItems: 1166 167 - if:168 not:169 properties:170 compatible:171 contains:172 enum:173 - fsl,imx28-lcdif174 then:175 properties:176 dmas: false177 dma-names: false178 179examples:180 - |181 #include <dt-bindings/clock/imx6sx-clock.h>182 #include <dt-bindings/interrupt-controller/arm-gic.h>183 184 display-controller@2220000 {185 compatible = "fsl,imx6sx-lcdif";186 reg = <0x02220000 0x4000>;187 interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>;188 clocks = <&clks IMX6SX_CLK_LCDIF1_PIX>,189 <&clks IMX6SX_CLK_LCDIF_APB>,190 <&clks IMX6SX_CLK_DISPLAY_AXI>;191 clock-names = "pix", "axi", "disp_axi";192 power-domains = <&pd_disp>;193 194 port {195 endpoint {196 remote-endpoint = <&panel_in>;197 };198 };199 };200 201...202