Commit | Line | Data |
---|---|---|
a6356f93 LD |
1 | ARM HDLCD |
2 | ||
3 | This is a display controller found on several development platforms produced | |
4 | by ARM Ltd and in more modern of its' Fast Models. The HDLCD is an RGB | |
5 | streamer that reads the data from a framebuffer and sends it to a single | |
6 | digital encoder (DVI or HDMI). | |
7 | ||
8 | Required 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 | ||
19 | Required 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 | ||
24 | Optional 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 | ||
31 | Example: | |
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 | }; |