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