1Device-Tree bindings for Atmel's HLCDC (High LCD Controller) DRM driver 2 3The Atmel HLCDC Display Controller is subdevice of the HLCDC MFD device. 4See ../../mfd/atmel-hlcdc.txt for more details. 5 6Required properties: 7 - compatible: value should be "atmel,hlcdc-display-controller" 8 - pinctrl-names: the pin control state names. Should contain "default". 9 - pinctrl-0: should contain the default pinctrl states. 10 - #address-cells: should be set to 1. 11 - #size-cells: should be set to 0. 12 13Required children nodes: 14 Children nodes are encoding available output ports and their connections 15 to external devices using the OF graph representation (see ../graph.txt). 16 At least one port node is required. 17 18Optional properties in grandchild nodes: 19 Any endpoint grandchild node may specify a desired video interface 20 according to ../../media/video-interfaces.txt, specifically 21 - bus-width: recognized values are <12>, <16>, <18> and <24>, and 22 override any output mode selection heuristic, forcing "rgb444", 23 "rgb565", "rgb666" and "rgb888" respectively. 24 25Example: 26 27 hlcdc: hlcdc@f0030000 { 28 compatible = "atmel,sama5d3-hlcdc"; 29 reg = <0xf0030000 0x2000>; 30 interrupts = <36 IRQ_TYPE_LEVEL_HIGH 0>; 31 clocks = <&lcdc_clk>, <&lcdck>, <&clk32k>; 32 clock-names = "periph_clk","sys_clk", "slow_clk"; 33 34 hlcdc-display-controller { 35 compatible = "atmel,hlcdc-display-controller"; 36 pinctrl-names = "default"; 37 pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb888>; 38 #address-cells = <1>; 39 #size-cells = <0>; 40 41 port@0 { 42 #address-cells = <1>; 43 #size-cells = <0>; 44 reg = <0>; 45 46 hlcdc_panel_output: endpoint@0 { 47 reg = <0>; 48 remote-endpoint = <&panel_input>; 49 }; 50 }; 51 }; 52 53 hlcdc_pwm: hlcdc-pwm { 54 compatible = "atmel,hlcdc-pwm"; 55 pinctrl-names = "default"; 56 pinctrl-0 = <&pinctrl_lcd_pwm>; 57 #pwm-cells = <3>; 58 }; 59 }; 60 61Example 2: With a video interface override to force rgb565; as above 62but with these changes/additions: 63 64 &hlcdc { 65 hlcdc-display-controller { 66 pinctrl-names = "default"; 67 pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb565>; 68 69 port@0 { 70 hlcdc_panel_output: endpoint@0 { 71 bus-width = <16>; 72 }; 73 }; 74 }; 75 }; 76