Personal tools

Difference between revisions of "MX8 Display"

From Variscite Wiki

Jump to: navigation, search
m (Eran moved page VAR-SOM-MX8X Display to MX8 Display without leaving a redirect)
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__
= Introduction =
 
== LVDS  ==
 
{{#var:HARDWARE_NAME}} supports 2 LVDS interfaces.<br>
 
Variscite Symphony carrier board comes with 2 LVDS connectors, one connector per interface.<br>
 
By default Variscite panel is connected in LVDS#A connector.<br>
 
  
= Adding custom LVDS panel =
+
{{#ifeq: {{#var:HARDWARE_NAME}}|VAR-SOM-MX8|
{{#var:HARDWARE_NAME}} evaluation kit comes with 800x480 LCD panel. {{#var:HARDWARE_NAME}} DTS file was created with this panel in mind.
+
To support your custom LVDS panel, you should make several modifications
+
  
== Referencing custom LVDS panel in the DTS file ==
+
= Selecting display type =
The following code references Variscite panel in {{#ifeq: {{#var:HARDWARE_NAME}}|VAR-SOM-MX8X|fsl-imx8qxp-var-som-common.dtsi|fsl-imx8qm-var-som.dts}} under kernel source tree
+
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 05:13, 15 September 2019


VAR-SOM-MX8X Display



1 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.

1.1 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.

2 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