| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218 |
- # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
- %YAML 1.2
- ---
- $id: http://devicetree.org/schemas/display/fsl,lcdif.yaml#
- $schema: http://devicetree.org/meta-schemas/core.yaml#
- title: Freescale/NXP i.MX LCD Interface (LCDIF)
- maintainers:
- - Marek Vasut <marex@denx.de>
- - Stefan Agner <stefan@agner.ch>
- description: |
- (e)LCDIF display controller found in the Freescale/NXP i.MX SoCs.
- properties:
- compatible:
- oneOf:
- - enum:
- - fsl,imx23-lcdif
- - fsl,imx28-lcdif
- - fsl,imx6sx-lcdif
- - fsl,imx8mp-lcdif
- - fsl,imx93-lcdif
- - items:
- - enum:
- - fsl,imx6sl-lcdif
- - fsl,imx6sll-lcdif
- - fsl,imx6ul-lcdif
- - fsl,imx7d-lcdif
- - fsl,imx8mm-lcdif
- - fsl,imx8mn-lcdif
- - fsl,imx8mq-lcdif
- - const: fsl,imx6sx-lcdif
- reg:
- maxItems: 1
- clocks:
- items:
- - description: Pixel clock
- - description: Bus clock
- - description: Display AXI clock
- minItems: 1
- clock-names:
- items:
- - const: pix
- - const: axi
- - const: disp_axi
- minItems: 1
- dmas:
- items:
- - description: DMA specifier for the RX DMA channel.
- dma-names:
- items:
- - const: rx
- interrupts:
- items:
- - description: LCDIF DMA interrupt
- - description: LCDIF Error interrupt
- minItems: 1
- power-domains:
- maxItems: 1
- port:
- $ref: /schemas/graph.yaml#/properties/port
- description: The LCDIF output port
- display:
- $ref: /schemas/types.yaml#/definitions/phandle
- description: phandle to display panel
- deprecated: true
- display0:
- $ref: panel/panel-common.yaml#
- deprecated: true
- lcd-supply:
- deprecated: true
- required:
- - compatible
- - reg
- - clocks
- - interrupts
- additionalProperties: false
- allOf:
- - if:
- properties:
- compatible:
- contains:
- const: fsl,imx6sx-lcdif
- then:
- properties:
- clocks:
- minItems: 2
- maxItems: 3
- clock-names:
- minItems: 2
- maxItems: 3
- required:
- - clock-names
- - if:
- properties:
- compatible:
- contains:
- enum:
- - fsl,imx8mp-lcdif
- - fsl,imx93-lcdif
- then:
- properties:
- clocks:
- minItems: 3
- maxItems: 3
- clock-names:
- minItems: 3
- maxItems: 3
- required:
- - clock-names
- - if:
- not:
- properties:
- compatible:
- contains:
- enum:
- - fsl,imx6sx-lcdif
- - fsl,imx8mp-lcdif
- - fsl,imx93-lcdif
- then:
- properties:
- clocks:
- maxItems: 1
- clock-names:
- maxItems: 1
- - if:
- properties:
- compatible:
- const: fsl,imx6sx-lcdif
- then:
- required:
- - power-domains
- - if:
- properties:
- compatible:
- contains:
- enum:
- - fsl,imx6sl-lcdif
- - fsl,imx8mm-lcdif
- - fsl,imx8mn-lcdif
- - fsl,imx8mp-lcdif
- - fsl,imx93-lcdif
- then:
- required:
- - power-domains
- - if:
- properties:
- compatible:
- contains:
- enum:
- - fsl,imx23-lcdif
- then:
- properties:
- interrupts:
- minItems: 2
- maxItems: 2
- else:
- properties:
- interrupts:
- maxItems: 1
- - if:
- not:
- properties:
- compatible:
- contains:
- enum:
- - fsl,imx28-lcdif
- then:
- properties:
- dmas: false
- dma-names: false
- display: false
- display0: false
- lcd-supply: false
- required:
- - port
- examples:
- - |
- #include <dt-bindings/clock/imx6sx-clock.h>
- #include <dt-bindings/interrupt-controller/arm-gic.h>
- display-controller@2220000 {
- compatible = "fsl,imx6sx-lcdif";
- reg = <0x02220000 0x4000>;
- interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&clks IMX6SX_CLK_LCDIF1_PIX>,
- <&clks IMX6SX_CLK_LCDIF_APB>,
- <&clks IMX6SX_CLK_DISPLAY_AXI>;
- clock-names = "pix", "axi", "disp_axi";
- power-domains = <&pd_disp>;
- port {
- endpoint {
- remote-endpoint = <&panel_in>;
- };
- };
- };
- ...
|