xref: /freebsd/sys/contrib/device-tree/Bindings/display/arm,hdlcd.txt (revision fe75646a0234a261c0013bf1840fdac4acaf0cec)
1ARM HDLCD
2
3This is a display controller found on several development platforms produced
4by ARM Ltd and in more modern of its' Fast Models. The HDLCD is an RGB
5streamer that reads the data from a framebuffer and sends it to a single
6digital encoder (DVI or HDMI).
7
8Required properties:
9  - compatible: "arm,hdlcd"
10  - reg: Physical base address and length of the controller's registers.
11  - interrupts: One interrupt used by the display controller to notify the
12    interrupt controller when any of the interrupt sources programmed in
13    the interrupt mask register have activated.
14  - clocks: A list of phandle + clock-specifier pairs, one for each
15    entry in 'clock-names'.
16  - clock-names: A list of clock names. For HDLCD it should contain:
17      - "pxlclk" for the clock feeding the output PLL of the controller.
18
19Required sub-nodes:
20  - port: The HDLCD connection to an encoder chip. The connection is modeled
21    using the OF graph bindings specified in
22    Documentation/devicetree/bindings/graph.txt.
23
24Optional properties:
25  - memory-region: phandle to a node describing memory (see
26    Documentation/devicetree/bindings/reserved-memory/reserved-memory.txt) to be
27    used for the framebuffer; if not present, the framebuffer may be located
28    anywhere in memory.
29
30
31Example:
32
33/ {
34	...
35
36	hdlcd@2b000000 {
37		compatible = "arm,hdlcd";
38		reg = <0 0x2b000000 0 0x1000>;
39		interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
40		clocks = <&oscclk5>;
41		clock-names = "pxlclk";
42		port {
43			hdlcd_output: endpoint@0 {
44				remote-endpoint = <&hdmi_enc_input>;
45			};
46		};
47	};
48
49	/* HDMI encoder on I2C bus */
50	i2c@7ffa0000 {
51		....
52		hdmi-transmitter@70 {
53			compatible = ".....";
54			reg = <0x70>;
55			port@0 {
56				hdmi_enc_input: endpoint {
57					remote-endpoint = <&hdlcd_output>;
58				};
59
60				hdmi_enc_output: endpoint {
61					remote-endpoint = <&hdmi_1_port>;
62				};
63			};
64		};
65
66	};
67
68	hdmi1: connector@1 {
69		compatible = "hdmi-connector";
70		type = "a";
71		port {
72			hdmi_1_port: endpoint {
73				remote-endpoint = <&hdmi_enc_output>;
74			};
75		};
76	};
77
78	...
79};
80