Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Documentation: drm: Add DT bindings for ARM HDLCD

Cc: Pawel Moll <pawel.moll@arm.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Ian Campbell <ijc+devicetree@hellion.org.uk>
Cc: Kumar Gala <galak@codeaurora.org>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Liviu Dudau <Liviu.Dudau@arm.com>

authored by

Liviu Dudau and committed by
Sudeep Holla
a6356f93 e6d7f6dc

+79
+79
Documentation/devicetree/bindings/display/arm,hdlcd.txt
··· 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 + };