xref: /linux/Documentation/devicetree/bindings/display/tilcdc/ti,am33xx-tilcdc.yaml (revision 0fc8f6200d2313278fbf4539bbab74677c685531)
1*e88bb45cSKory Maincent (TI.com)# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*e88bb45cSKory Maincent (TI.com)# Copyright 2025 Bootlin
3*e88bb45cSKory Maincent (TI.com)%YAML 1.2
4*e88bb45cSKory Maincent (TI.com)---
5*e88bb45cSKory Maincent (TI.com)$id: http://devicetree.org/schemas/display/tilcdc/ti,am33xx-tilcdc.yaml#
6*e88bb45cSKory Maincent (TI.com)$schema: http://devicetree.org/meta-schemas/core.yaml#
7*e88bb45cSKory Maincent (TI.com)
8*e88bb45cSKory Maincent (TI.com)title: TI LCD Controller, found on AM335x, DA850, AM18x and OMAP-L138
9*e88bb45cSKory Maincent (TI.com)
10*e88bb45cSKory Maincent (TI.com)maintainers:
11*e88bb45cSKory Maincent (TI.com)  - Kory Maincent <kory.maincent@bootlin.com>
12*e88bb45cSKory Maincent (TI.com)
13*e88bb45cSKory Maincent (TI.com)properties:
14*e88bb45cSKory Maincent (TI.com)  compatible:
15*e88bb45cSKory Maincent (TI.com)    enum:
16*e88bb45cSKory Maincent (TI.com)      - ti,am33xx-tilcdc
17*e88bb45cSKory Maincent (TI.com)      - ti,da850-tilcdc
18*e88bb45cSKory Maincent (TI.com)
19*e88bb45cSKory Maincent (TI.com)  reg:
20*e88bb45cSKory Maincent (TI.com)    maxItems: 1
21*e88bb45cSKory Maincent (TI.com)
22*e88bb45cSKory Maincent (TI.com)  interrupts:
23*e88bb45cSKory Maincent (TI.com)    maxItems: 1
24*e88bb45cSKory Maincent (TI.com)
25*e88bb45cSKory Maincent (TI.com)  port:
26*e88bb45cSKory Maincent (TI.com)    $ref: /schemas/graph.yaml#/properties/port
27*e88bb45cSKory Maincent (TI.com)
28*e88bb45cSKory Maincent (TI.com)  ti,hwmods:
29*e88bb45cSKory Maincent (TI.com)    $ref: /schemas/types.yaml#/definitions/string
30*e88bb45cSKory Maincent (TI.com)    description:
31*e88bb45cSKory Maincent (TI.com)      Name of the hwmod associated to the LCDC
32*e88bb45cSKory Maincent (TI.com)
33*e88bb45cSKory Maincent (TI.com)  max-bandwidth:
34*e88bb45cSKory Maincent (TI.com)    $ref: /schemas/types.yaml#/definitions/uint32
35*e88bb45cSKory Maincent (TI.com)    description:
36*e88bb45cSKory Maincent (TI.com)      The maximum pixels per second that the memory interface / lcd
37*e88bb45cSKory Maincent (TI.com)      controller combination can sustain
38*e88bb45cSKory Maincent (TI.com)    # maximum: 2048*2048*60
39*e88bb45cSKory Maincent (TI.com)    maximum: 251658240
40*e88bb45cSKory Maincent (TI.com)
41*e88bb45cSKory Maincent (TI.com)  max-width:
42*e88bb45cSKory Maincent (TI.com)    $ref: /schemas/types.yaml#/definitions/uint32
43*e88bb45cSKory Maincent (TI.com)    description:
44*e88bb45cSKory Maincent (TI.com)      The maximum horizontal pixel width supported by the lcd controller.
45*e88bb45cSKory Maincent (TI.com)    maximum: 2048
46*e88bb45cSKory Maincent (TI.com)
47*e88bb45cSKory Maincent (TI.com)  max-pixelclock:
48*e88bb45cSKory Maincent (TI.com)    $ref: /schemas/types.yaml#/definitions/uint32
49*e88bb45cSKory Maincent (TI.com)    description:
50*e88bb45cSKory Maincent (TI.com)      The maximum pixel clock that can be supported by the lcd controller
51*e88bb45cSKory Maincent (TI.com)      in KHz.
52*e88bb45cSKory Maincent (TI.com)
53*e88bb45cSKory Maincent (TI.com)  blue-and-red-wiring:
54*e88bb45cSKory Maincent (TI.com)    enum: [straight, crossed]
55*e88bb45cSKory Maincent (TI.com)    description:
56*e88bb45cSKory Maincent (TI.com)      This property deals with the LCDC revision 2 (found on AM335x)
57*e88bb45cSKory Maincent (TI.com)      color errata [1].
58*e88bb45cSKory Maincent (TI.com)       - "straight" indicates normal wiring that supports RGB565,
59*e88bb45cSKory Maincent (TI.com)         BGR888, and XBGR8888 color formats.
60*e88bb45cSKory Maincent (TI.com)       - "crossed" indicates wiring that has blue and red wires
61*e88bb45cSKory Maincent (TI.com)         crossed. This setup supports BGR565, RGB888 and XRGB8888
62*e88bb45cSKory Maincent (TI.com)         formats.
63*e88bb45cSKory Maincent (TI.com)       - If the property is not present or its value is not recognized
64*e88bb45cSKory Maincent (TI.com)         the legacy mode is assumed. This configuration supports RGB565,
65*e88bb45cSKory Maincent (TI.com)         RGB888 and XRGB8888 formats. However, depending on wiring, the red
66*e88bb45cSKory Maincent (TI.com)         and blue colors are swapped in either 16 or 24-bit color modes.
67*e88bb45cSKory Maincent (TI.com)
68*e88bb45cSKory Maincent (TI.com)       [1] There is an errata about AM335x color wiring. For 16-bit color
69*e88bb45cSKory Maincent (TI.com)       mode the wires work as they should (LCD_DATA[0:4] is for Blue[3:7]),
70*e88bb45cSKory Maincent (TI.com)       but for 24 bit color modes the wiring of blue and red components is
71*e88bb45cSKory Maincent (TI.com)       crossed and LCD_DATA[0:4] is for Red[3:7] and LCD_DATA[11:15] is
72*e88bb45cSKory Maincent (TI.com)       for Blue[3-7]. For more details see section 3.1.1 in AM335x
73*e88bb45cSKory Maincent (TI.com)       Silicon Errata
74*e88bb45cSKory Maincent (TI.com)       https://www.ti.com/general/docs/lit/getliterature.tsp?baseLiteratureNumber=sprz360
75*e88bb45cSKory Maincent (TI.com)
76*e88bb45cSKory Maincent (TI.com)required:
77*e88bb45cSKory Maincent (TI.com)  - compatible
78*e88bb45cSKory Maincent (TI.com)  - interrupts
79*e88bb45cSKory Maincent (TI.com)  - reg
80*e88bb45cSKory Maincent (TI.com)  - port
81*e88bb45cSKory Maincent (TI.com)
82*e88bb45cSKory Maincent (TI.com)additionalProperties: false
83*e88bb45cSKory Maincent (TI.com)
84*e88bb45cSKory Maincent (TI.com)examples:
85*e88bb45cSKory Maincent (TI.com)  - |
86*e88bb45cSKory Maincent (TI.com)    display-controller@4830e000 {
87*e88bb45cSKory Maincent (TI.com)        compatible = "ti,am33xx-tilcdc";
88*e88bb45cSKory Maincent (TI.com)        reg = <0x4830e000 0x1000>;
89*e88bb45cSKory Maincent (TI.com)        interrupt-parent = <&intc>;
90*e88bb45cSKory Maincent (TI.com)        interrupts = <36>;
91*e88bb45cSKory Maincent (TI.com)        ti,hwmods = "lcdc";
92*e88bb45cSKory Maincent (TI.com)
93*e88bb45cSKory Maincent (TI.com)        blue-and-red-wiring = "crossed";
94*e88bb45cSKory Maincent (TI.com)
95*e88bb45cSKory Maincent (TI.com)        port {
96*e88bb45cSKory Maincent (TI.com)            endpoint {
97*e88bb45cSKory Maincent (TI.com)                remote-endpoint = <&hdmi_0>;
98*e88bb45cSKory Maincent (TI.com)            };
99*e88bb45cSKory Maincent (TI.com)        };
100*e88bb45cSKory Maincent (TI.com)    };
101