DART-MX8M Display

From Variscite Wiki
Revision as of 13:38, 18 July 2018 by Admin (talk | contribs) (Created page with "{{PageHeader|DART-MX8M Display}} {{DocImage|category1=Yocto|category2=DART-MX8M}}__toc__ = Introduction = == MIPI-DSI, LVDS and HDMI == I.MX8M supports MIPI-DSI and HDMI displ...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
DART-MX8M Display

Introduction

MIPI-DSI, LVDS and HDMI

I.MX8M supports MIPI-DSI and HDMI displays. DART-MX8M can be optionally equipped with SN75LVDS83B MIPI-DSI to LVDS bridge.
DART-MX8M carrier board comes with LVDS and HDMI connectors, so you can connect either LVDS or HDMI display.
Dual LVDS+HDMI display configuration is also supported.
Connecting MIPI-DSI display to DART-MX8M carrier board requires designing a custom connector.

DCSS vs LCDIF

i.MX8M comes with 2 display controllers: DCSS and LCDIF.
DCCS can be connected to either HDMI or MIPI-DSI and supports resolutions up to 4K.
LCDIF can be connected only to MIPI-DSI and supports resolutions up to 1080p.

Selecting display configuration

Selecting display configuration is a matter of selecting an appropriate DTB file.
All available DTB files are listed in the table below.

DTB File Name
Description
imx8m-var-dart-emmc-wifi-hdmi.dtb Device tree blob for eMMC, WIFI and HDMI display configuration. SD card disabled.
imx8m-var-dart-emmc-wifi-hdmi-4k.dtb Device tree blob for eMMC, WIFI and HDMI 4K display configuration. SD card disabled.
imx8m-var-dart-emmc-wifi-dcss-lvds.dtb Device tree blob for for eMMC, WIFI and DCSS LVDS display configuration. SD card disabled.
imx8m-var-dart-emmc-wifi-lcdif-lvds.dtb Device tree blob for for eMMC, WIFI and LCDIF LVDS display configuration. SD card disabled.
imx8m-var-dart-emmc-wifi-dual-display.dtb Device tree blob for for eMMC, WIFI and dual LVDS+HDMI display configuration. SD card disabled.
imx8m-var-dart-sd-emmc-hdmi.dtb Device tree blob for SD, eMMC and HDMI display configuration. WIFI disabled.
imx8m-var-dart-sd-emmc-hdmi-4k.dtb Device tree blob for SD, eMMC and HDMI 4K display configuration. WIFI disabled.
imx8m-var-dart-sd-emmc-dcss-lvds.dtb Device tree blob for SD, eMMC and DCSS LVDS display configuration. WIFI disabled.
imx8m-var-dart-sd-emmc-lcdif-lvds.dtb Device tree blob for SD, eMMC and LCDIF LVDS display configuration. WIFI disabled.
imx8m-var-dart-sd-emmc-dual-display.dtb Device tree blob for SD, eMMC and dual LVDS+HDMI display configuration. WIFI disabled.


File /boot/imx8m-var-dart.dtb is a symbolic link to the active DTB file. By default DCSS+LVDS display is used.
For example, to select HDMI display in EMMC+WIFI configuration, run the following commands:

# cd /boot
# ln -fs imx8m-var-dart-emmc-wifi-hdmi.dtb imx8m-var-dart.dtb

Reboot is required for new configuration to take effect.

Setting HDMI display resolution

The default HDMI display resolution is 1080P. This setting is passed to the Linux kernel via "video" command line parameter.

To check the current resolution, use fbset command:

root@imx8m-var-dart:~# fbset

mode "1920x1080"
    geometry 1920 1080 1920 1080 32
    timings 0 0 0 0 0 0 0
    accel true
    rgba 8/16,8/8,8/0,0/0
endmode

To modify HDMI display resolution use fw_setenv command to set "video" parameter in the u-boot environment.
For example, to set 4K@60fps resolution, run

# fw_setenv video HDMI-A-1:3840x2160-32@60

The setting will take effect after reboot.

Setting Weston desktop resolution

The default Weston desktop resolution is 1080P. This setting is independent of actual display resolution.
To modify Weston resolution, edit /etc/default/weston and set DESKTOP_SHELL_WINDOW parameter.
For example, to set 4K resolution

DESKTOP_SHELL_WINDOW=3840x2160

For new setting to take effect restart weston by running

# systemctl restart weston

Dual display configuration

In dual display configuration Weston desktop is running on LVDS display and HDMI display is blank.
To play video on HDMI display the following command can be used:

# gplay-1.0 --video-sink=kmssink video.mp4

To play video on LVDS display the following command can be used:

 # gplay-1.0 --video-sink=waylandsink video.mp4