xref: /freebsd/sys/contrib/device-tree/Bindings/display/fsl,lcdif.yaml (revision 84943d6f38e936ac3b7a3947ca26eeb27a39f938)
12eb4d8dcSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
22eb4d8dcSEmmanuel Vadot%YAML 1.2
32eb4d8dcSEmmanuel Vadot---
42eb4d8dcSEmmanuel Vadot$id: http://devicetree.org/schemas/display/fsl,lcdif.yaml#
52eb4d8dcSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
62eb4d8dcSEmmanuel Vadot
72eb4d8dcSEmmanuel Vadottitle: Freescale/NXP i.MX LCD Interface (LCDIF)
82eb4d8dcSEmmanuel Vadot
92eb4d8dcSEmmanuel Vadotmaintainers:
102eb4d8dcSEmmanuel Vadot  - Marek Vasut <marex@denx.de>
112eb4d8dcSEmmanuel Vadot  - Stefan Agner <stefan@agner.ch>
122eb4d8dcSEmmanuel Vadot
132eb4d8dcSEmmanuel Vadotdescription: |
142eb4d8dcSEmmanuel Vadot  (e)LCDIF display controller found in the Freescale/NXP i.MX SoCs.
152eb4d8dcSEmmanuel Vadot
162eb4d8dcSEmmanuel Vadotproperties:
172eb4d8dcSEmmanuel Vadot  compatible:
182eb4d8dcSEmmanuel Vadot    oneOf:
192eb4d8dcSEmmanuel Vadot      - enum:
202eb4d8dcSEmmanuel Vadot          - fsl,imx23-lcdif
212eb4d8dcSEmmanuel Vadot          - fsl,imx28-lcdif
222eb4d8dcSEmmanuel Vadot          - fsl,imx6sx-lcdif
23b97ee269SEmmanuel Vadot          - fsl,imx8mp-lcdif
24f126890aSEmmanuel Vadot          - fsl,imx93-lcdif
252eb4d8dcSEmmanuel Vadot      - items:
262eb4d8dcSEmmanuel Vadot          - enum:
272eb4d8dcSEmmanuel Vadot              - fsl,imx6sl-lcdif
282eb4d8dcSEmmanuel Vadot              - fsl,imx6sll-lcdif
292eb4d8dcSEmmanuel Vadot              - fsl,imx6ul-lcdif
302eb4d8dcSEmmanuel Vadot              - fsl,imx7d-lcdif
312eb4d8dcSEmmanuel Vadot              - fsl,imx8mm-lcdif
32354d7675SEmmanuel Vadot              - fsl,imx8mn-lcdif
332eb4d8dcSEmmanuel Vadot              - fsl,imx8mq-lcdif
342eb4d8dcSEmmanuel Vadot          - const: fsl,imx6sx-lcdif
352eb4d8dcSEmmanuel Vadot
362eb4d8dcSEmmanuel Vadot  reg:
372eb4d8dcSEmmanuel Vadot    maxItems: 1
382eb4d8dcSEmmanuel Vadot
392eb4d8dcSEmmanuel Vadot  clocks:
402eb4d8dcSEmmanuel Vadot    items:
412eb4d8dcSEmmanuel Vadot      - description: Pixel clock
422eb4d8dcSEmmanuel Vadot      - description: Bus clock
432eb4d8dcSEmmanuel Vadot      - description: Display AXI clock
442eb4d8dcSEmmanuel Vadot    minItems: 1
452eb4d8dcSEmmanuel Vadot
462eb4d8dcSEmmanuel Vadot  clock-names:
472eb4d8dcSEmmanuel Vadot    items:
482eb4d8dcSEmmanuel Vadot      - const: pix
492eb4d8dcSEmmanuel Vadot      - const: axi
502eb4d8dcSEmmanuel Vadot      - const: disp_axi
512eb4d8dcSEmmanuel Vadot    minItems: 1
522eb4d8dcSEmmanuel Vadot
532eb4d8dcSEmmanuel Vadot  interrupts:
54*84943d6fSEmmanuel Vadot    items:
55*84943d6fSEmmanuel Vadot      - description: LCDIF DMA interrupt
56*84943d6fSEmmanuel Vadot      - description: LCDIF Error interrupt
57*84943d6fSEmmanuel Vadot    minItems: 1
582eb4d8dcSEmmanuel Vadot
598bab661aSEmmanuel Vadot  power-domains:
608bab661aSEmmanuel Vadot    maxItems: 1
618bab661aSEmmanuel Vadot
622eb4d8dcSEmmanuel Vadot  port:
632eb4d8dcSEmmanuel Vadot    $ref: /schemas/graph.yaml#/properties/port
642eb4d8dcSEmmanuel Vadot    description: The LCDIF output port
652eb4d8dcSEmmanuel Vadot
662eb4d8dcSEmmanuel Vadotrequired:
672eb4d8dcSEmmanuel Vadot  - compatible
682eb4d8dcSEmmanuel Vadot  - reg
692eb4d8dcSEmmanuel Vadot  - clocks
702eb4d8dcSEmmanuel Vadot  - interrupts
712eb4d8dcSEmmanuel Vadot  - port
722eb4d8dcSEmmanuel Vadot
732eb4d8dcSEmmanuel VadotadditionalProperties: false
742eb4d8dcSEmmanuel Vadot
752eb4d8dcSEmmanuel VadotallOf:
762eb4d8dcSEmmanuel Vadot  - if:
772eb4d8dcSEmmanuel Vadot      properties:
782eb4d8dcSEmmanuel Vadot        compatible:
792eb4d8dcSEmmanuel Vadot          contains:
802eb4d8dcSEmmanuel Vadot            const: fsl,imx6sx-lcdif
812eb4d8dcSEmmanuel Vadot    then:
822eb4d8dcSEmmanuel Vadot      properties:
832eb4d8dcSEmmanuel Vadot        clocks:
842eb4d8dcSEmmanuel Vadot          minItems: 2
852eb4d8dcSEmmanuel Vadot          maxItems: 3
862eb4d8dcSEmmanuel Vadot        clock-names:
872eb4d8dcSEmmanuel Vadot          minItems: 2
882eb4d8dcSEmmanuel Vadot          maxItems: 3
892eb4d8dcSEmmanuel Vadot      required:
902eb4d8dcSEmmanuel Vadot        - clock-names
918bab661aSEmmanuel Vadot  - if:
928bab661aSEmmanuel Vadot      properties:
938bab661aSEmmanuel Vadot        compatible:
948bab661aSEmmanuel Vadot          contains:
95f126890aSEmmanuel Vadot            enum:
96f126890aSEmmanuel Vadot              - fsl,imx8mp-lcdif
97f126890aSEmmanuel Vadot              - fsl,imx93-lcdif
988bab661aSEmmanuel Vadot    then:
998bab661aSEmmanuel Vadot      properties:
1008bab661aSEmmanuel Vadot        clocks:
1018bab661aSEmmanuel Vadot          minItems: 3
1028bab661aSEmmanuel Vadot          maxItems: 3
1038bab661aSEmmanuel Vadot        clock-names:
1048bab661aSEmmanuel Vadot          minItems: 3
1058bab661aSEmmanuel Vadot          maxItems: 3
1068bab661aSEmmanuel Vadot      required:
1078bab661aSEmmanuel Vadot        - clock-names
1088bab661aSEmmanuel Vadot  - if:
1098bab661aSEmmanuel Vadot      not:
1108bab661aSEmmanuel Vadot        properties:
1118bab661aSEmmanuel Vadot          compatible:
1128bab661aSEmmanuel Vadot            contains:
1138bab661aSEmmanuel Vadot              enum:
1148bab661aSEmmanuel Vadot                - fsl,imx6sx-lcdif
1158bab661aSEmmanuel Vadot                - fsl,imx8mp-lcdif
116f126890aSEmmanuel Vadot                - fsl,imx93-lcdif
1178bab661aSEmmanuel Vadot    then:
1182eb4d8dcSEmmanuel Vadot      properties:
1192eb4d8dcSEmmanuel Vadot        clocks:
1202eb4d8dcSEmmanuel Vadot          maxItems: 1
1212eb4d8dcSEmmanuel Vadot        clock-names:
1222eb4d8dcSEmmanuel Vadot          maxItems: 1
1238bab661aSEmmanuel Vadot  - if:
1248bab661aSEmmanuel Vadot      properties:
1258bab661aSEmmanuel Vadot        compatible:
1268bab661aSEmmanuel Vadot          contains:
1278bab661aSEmmanuel Vadot            enum:
1288bab661aSEmmanuel Vadot              - fsl,imx6sl-lcdif
1298bab661aSEmmanuel Vadot              - fsl,imx6sx-lcdif
1308bab661aSEmmanuel Vadot              - fsl,imx8mm-lcdif
1318bab661aSEmmanuel Vadot              - fsl,imx8mn-lcdif
1328bab661aSEmmanuel Vadot              - fsl,imx8mp-lcdif
133f126890aSEmmanuel Vadot              - fsl,imx93-lcdif
1348bab661aSEmmanuel Vadot    then:
1358bab661aSEmmanuel Vadot      required:
1368bab661aSEmmanuel Vadot        - power-domains
137*84943d6fSEmmanuel Vadot  - if:
138*84943d6fSEmmanuel Vadot      properties:
139*84943d6fSEmmanuel Vadot        compatible:
140*84943d6fSEmmanuel Vadot          contains:
141*84943d6fSEmmanuel Vadot            enum:
142*84943d6fSEmmanuel Vadot              - fsl,imx23-lcdif
143*84943d6fSEmmanuel Vadot    then:
144*84943d6fSEmmanuel Vadot      properties:
145*84943d6fSEmmanuel Vadot        interrupts:
146*84943d6fSEmmanuel Vadot          minItems: 2
147*84943d6fSEmmanuel Vadot          maxItems: 2
148*84943d6fSEmmanuel Vadot    else:
149*84943d6fSEmmanuel Vadot      properties:
150*84943d6fSEmmanuel Vadot        interrupts:
151*84943d6fSEmmanuel Vadot          maxItems: 1
1522eb4d8dcSEmmanuel Vadot
1532eb4d8dcSEmmanuel Vadotexamples:
1542eb4d8dcSEmmanuel Vadot  - |
1552eb4d8dcSEmmanuel Vadot    #include <dt-bindings/clock/imx6sx-clock.h>
1562eb4d8dcSEmmanuel Vadot    #include <dt-bindings/interrupt-controller/arm-gic.h>
1572eb4d8dcSEmmanuel Vadot
1582eb4d8dcSEmmanuel Vadot    display-controller@2220000 {
1592eb4d8dcSEmmanuel Vadot        compatible = "fsl,imx6sx-lcdif";
1602eb4d8dcSEmmanuel Vadot        reg = <0x02220000 0x4000>;
1612eb4d8dcSEmmanuel Vadot        interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>;
1622eb4d8dcSEmmanuel Vadot        clocks = <&clks IMX6SX_CLK_LCDIF1_PIX>,
1632eb4d8dcSEmmanuel Vadot                 <&clks IMX6SX_CLK_LCDIF_APB>,
1642eb4d8dcSEmmanuel Vadot                 <&clks IMX6SX_CLK_DISPLAY_AXI>;
1652eb4d8dcSEmmanuel Vadot        clock-names = "pix", "axi", "disp_axi";
1668bab661aSEmmanuel Vadot        power-domains = <&pd_disp>;
1672eb4d8dcSEmmanuel Vadot
1682eb4d8dcSEmmanuel Vadot        port {
1692eb4d8dcSEmmanuel Vadot            endpoint {
1702eb4d8dcSEmmanuel Vadot                remote-endpoint = <&panel_in>;
1712eb4d8dcSEmmanuel Vadot            };
1722eb4d8dcSEmmanuel Vadot        };
1732eb4d8dcSEmmanuel Vadot    };
1742eb4d8dcSEmmanuel Vadot
1752eb4d8dcSEmmanuel Vadot...
176