MX8 Display: Difference between revisions
m (Eran moved page VAR-SOM-MX8X Display to MX8 Display without leaving a redirect) |
No edit summary |
||
Line 3: | Line 3: | ||
--> {{#lst:Yocto_Platform_Customization|{{#var:RELEASE_PARAM|RELEASE_SUMO_V1.0_VAR-SOM-MX8X}}}} <!-- | --> {{#lst:Yocto_Platform_Customization|{{#var:RELEASE_PARAM|RELEASE_SUMO_V1.0_VAR-SOM-MX8X}}}} <!-- | ||
--> {{PageHeader|{{#var:HARDWARE_NAME}} Display}} {{DocImage|category1=Yocto|category2={{#var:HARDWARE_NAME}}}}__toc__ | --> {{PageHeader|{{#var:HARDWARE_NAME}} Display}} {{DocImage|category1=Yocto|category2={{#var:HARDWARE_NAME}}}}__toc__ | ||
{{#ifeq: {{#var:HARDWARE_NAME}}|VAR-SOM-MX8| | |||
{{# | |||
== | = Selecting display type = | ||
The following code | VAR-SOM-MX8 supports DP, HDMI and LVDS displays. DP and HDMI require Variscite extension boards VAR-EXT-DP and VAR-EXT-HDMI.<br> | ||
Selecting display configuration is a matter of selecting an appropriate DTB file.<br> | |||
All available DTB files are listed in the table below. | |||
{{#lst:Yocto_Platform_Customization|{{#var:FDT_TABLE_SECTION}}}} | |||
<br> | |||
File /boot/fsl-imx8qm-var-som.dtb is a symbolic link to the active DTB file. By default LVDS display is used.<br> | |||
For example, to select HDMI display, run the following commands: | |||
# cd /boot | |||
# ln -fs fsl-imx8qm-var-som-hdmi.dtb fsl-imx8qm-var-som.dtb | |||
The change will be effective after reboot.<br> | |||
= Loading HDMI and DP firmware = | |||
HDMI and DP displays require appropriate firmware to be loaded by u-boot. The firmware files are installed under /boot.<br> | |||
The HDMI display firmware blob is hdmitxfw.bin, the DP firmware blob is dpfw.bin. U-Boot environment variable hdp_file selects the blob.<br> | |||
By default HDMI firmware is loaded. To switch to DP firmware run the following command: | |||
# fw_setenv hdp_file dpfw.bin | |||
The change will be effective after reboot.<br> | |||
{{Note|Both firmware blob and DTB file should be set before rebooting the system, otherwise the boot process will be stuck.}} | |||
= Setting HDMI and DP resolution = | |||
By default the maximum resolution supported by HDMI/DP display is used.<br> | |||
To check the current resolution, run fbset command. | |||
<pre> | |||
# fbset | |||
mode "3840x2160" | |||
geometry 3840 2160 3840 2160 16 | |||
timings 0 0 0 0 0 0 0 | |||
accel true | |||
rgba 5/11,6/5,5/0,0/0 | |||
endmode | |||
</pre> | |||
To configure specific resolution use fw_setenv command to set video= kernel command line argument.<br> | |||
For example, to set 1080P@60fps resolution on HDMI display, run the following command: | |||
# fw_setenv kernelargs video=HDMI-A-1:1920x1080-32@60 | |||
To set 1080P@60fps resolution on DP display, run the following command: | |||
# fw_setenv kernelargs video=DP-1:1920x1080-32@60 | |||
The settings will be effective after reboot. | |||
}} | |||
= LVDS = | |||
{{#var:HARDWARE_NAME}} supports one dual-channel LVDS interface.<br> | |||
Variscite {{#var:HARDWARE_NAME}} evaluation kit comes with two LVDS connectors, one connector per LVDS channel.<br> | |||
By default Variscite panel is attached to LVDS#A connector.<br> | |||
== Adding custom LVDS panel == | |||
{{#var:HARDWARE_NAME}} evaluation kit comes with 800x480 LVDS panel. <br> | |||
{{#var:HARDWARE_NAME}} DTS file was created with this panel in mind. <br> | |||
To support different LVDS panel, several modifications may be required. | |||
The following code configures LVDS panel in arch/arm64/boot/dts/freescale/{{#ifeq: {{#var:HARDWARE_NAME}}|VAR-SOM-MX8X|fsl-imx8qxp-var-som-common.dtsi|fsl-imx8qm-var-som-lvds.dtsi}} under kernel source tree | |||
{{#ifeq: {{#var:HARDWARE_NAME}}|VAR-SOM-MX8X| | {{#ifeq: {{#var:HARDWARE_NAME}}|VAR-SOM-MX8X| | ||
Line 86: | Line 139: | ||
You may need to modify "fsl,data-mapping", "fsl,data-width" and "display-timings" properties to match your panel specification.<br> | You may need to modify "fsl,data-mapping", "fsl,data-width" and "display-timings" properties to match your panel specification.<br> | ||
For more information see Documentation/devicetree/bindings/display/imx/ldb.txt in the kernel source tree. | For more information see Documentation/devicetree/bindings/display/imx/ldb.txt in the kernel source tree. | ||
= Setting Weston Desktop Resolution = | |||
The default Weston uses maximum resolution supported by display.<br> | |||
To modify Weston resolution, edit /etc/xdg/weston/weston.ini and set size parameter in shell section.<br> | |||
For example, to set 1080P resolution | |||
[shell] | |||
size=3840x2160 | |||
For new settings to take effect restart weston by running | |||
# systemctl restart weston |
Revision as of 13:13, 15 September 2019
LVDS
VAR-SOM-MX8X supports one dual-channel LVDS interface.
Variscite VAR-SOM-MX8X evaluation kit comes with two LVDS connectors, one connector per LVDS channel.
By default Variscite panel is attached to LVDS#A connector.
Adding custom LVDS panel
VAR-SOM-MX8X evaluation kit comes with 800x480 LVDS panel.
VAR-SOM-MX8X DTS file was created with this panel in mind.
To support different LVDS panel, several modifications may be required.
The following code configures LVDS panel in arch/arm64/boot/dts/freescale/fsl-imx8qxp-var-som-common.dtsi under kernel source tree
&ldb1_phy { status = "ok"; }; &ldb1 { status = "ok"; lvds-channel@0 { fsl,data-mapping = "jeida"; fsl,data-width = <24>; status = "ok"; display-timings { lvds { clock-frequency = <29232000>; hactive = <800>; vactive = <480>; hback-porch = <40>; hfront-porch = <40>; vback-porch = <29>; vfront-porch = <13>; hsync-len = <48>; vsync-len = <3>; hsync-active = <0>; vsync-active = <0>; de-active = <1>; pixelclk-active = <0>; }; }; }; };
You may need to modify "fsl,data-mapping", "fsl,data-width" and "display-timings" properties to match your panel specification.
For more information see Documentation/devicetree/bindings/display/imx/ldb.txt in the kernel source tree.
Setting Weston Desktop Resolution
The default Weston uses maximum resolution supported by display.
To modify Weston resolution, edit /etc/xdg/weston/weston.ini and set size parameter in shell section.
For example, to set 1080P resolution
[shell] size=3840x2160
For new settings to take effect restart weston by running
# systemctl restart weston