1efdbd734SRob HerringDevice-Tree bindings for Atmel's HLCDC (High LCD Controller) DRM driver 2efdbd734SRob Herring 3efdbd734SRob HerringThe Atmel HLCDC Display Controller is subdevice of the HLCDC MFD device. 44ed91d48SRichard GenoudSee ../../mfd/atmel-hlcdc.txt for more details. 5efdbd734SRob Herring 6efdbd734SRob HerringRequired properties: 7efdbd734SRob Herring - compatible: value should be "atmel,hlcdc-display-controller" 8efdbd734SRob Herring - pinctrl-names: the pin control state names. Should contain "default". 9efdbd734SRob Herring - pinctrl-0: should contain the default pinctrl states. 10efdbd734SRob Herring - #address-cells: should be set to 1. 11efdbd734SRob Herring - #size-cells: should be set to 0. 12efdbd734SRob Herring 13efdbd734SRob HerringRequired children nodes: 14efdbd734SRob Herring Children nodes are encoding available output ports and their connections 15*47aab533SBjorn Helgaas to external devices using the OF graph representation (see ../graph.txt). 16efdbd734SRob Herring At least one port node is required. 17efdbd734SRob Herring 182e7c04aeSPeter RosinOptional properties in grandchild nodes: 192e7c04aeSPeter Rosin Any endpoint grandchild node may specify a desired video interface 202e7c04aeSPeter Rosin according to ../../media/video-interfaces.txt, specifically 212e7c04aeSPeter Rosin - bus-width: recognized values are <12>, <16>, <18> and <24>, and 222e7c04aeSPeter Rosin override any output mode selection heuristic, forcing "rgb444", 232e7c04aeSPeter Rosin "rgb565", "rgb666" and "rgb888" respectively. 242e7c04aeSPeter Rosin 25efdbd734SRob HerringExample: 26efdbd734SRob Herring 27efdbd734SRob Herring hlcdc: hlcdc@f0030000 { 28efdbd734SRob Herring compatible = "atmel,sama5d3-hlcdc"; 29efdbd734SRob Herring reg = <0xf0030000 0x2000>; 30efdbd734SRob Herring interrupts = <36 IRQ_TYPE_LEVEL_HIGH 0>; 31efdbd734SRob Herring clocks = <&lcdc_clk>, <&lcdck>, <&clk32k>; 32efdbd734SRob Herring clock-names = "periph_clk","sys_clk", "slow_clk"; 33efdbd734SRob Herring 34efdbd734SRob Herring hlcdc-display-controller { 35efdbd734SRob Herring compatible = "atmel,hlcdc-display-controller"; 36efdbd734SRob Herring pinctrl-names = "default"; 37efdbd734SRob Herring pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb888>; 38efdbd734SRob Herring #address-cells = <1>; 39efdbd734SRob Herring #size-cells = <0>; 40efdbd734SRob Herring 41efdbd734SRob Herring port@0 { 42efdbd734SRob Herring #address-cells = <1>; 43efdbd734SRob Herring #size-cells = <0>; 44efdbd734SRob Herring reg = <0>; 45efdbd734SRob Herring 46efdbd734SRob Herring hlcdc_panel_output: endpoint@0 { 47efdbd734SRob Herring reg = <0>; 48efdbd734SRob Herring remote-endpoint = <&panel_input>; 49efdbd734SRob Herring }; 50efdbd734SRob Herring }; 51efdbd734SRob Herring }; 52efdbd734SRob Herring 53efdbd734SRob Herring hlcdc_pwm: hlcdc-pwm { 54efdbd734SRob Herring compatible = "atmel,hlcdc-pwm"; 55efdbd734SRob Herring pinctrl-names = "default"; 56efdbd734SRob Herring pinctrl-0 = <&pinctrl_lcd_pwm>; 57efdbd734SRob Herring #pwm-cells = <3>; 58efdbd734SRob Herring }; 59efdbd734SRob Herring }; 602e7c04aeSPeter Rosin 612e7c04aeSPeter RosinExample 2: With a video interface override to force rgb565; as above 622e7c04aeSPeter Rosinbut with these changes/additions: 632e7c04aeSPeter Rosin 642e7c04aeSPeter Rosin &hlcdc { 652e7c04aeSPeter Rosin hlcdc-display-controller { 662e7c04aeSPeter Rosin pinctrl-names = "default"; 672e7c04aeSPeter Rosin pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb565>; 682e7c04aeSPeter Rosin 692e7c04aeSPeter Rosin port@0 { 702e7c04aeSPeter Rosin hlcdc_panel_output: endpoint@0 { 712e7c04aeSPeter Rosin bus-width = <16>; 722e7c04aeSPeter Rosin }; 732e7c04aeSPeter Rosin }; 742e7c04aeSPeter Rosin }; 752e7c04aeSPeter Rosin }; 76