How to Config Multi-Display RK3588

From ESS-WIKI
Jump to: navigation, search

RK3588 has 4 Vops.

Usage display rk3588 vop.png


ROM-6881 surport 5 types display : HDMI、DP、eDP、LVDS、、MIPI

Note:

1. MIPI and LVDS are alternative.

2. Dual-Change and eDP are alternative.




Enter U-boot interrupt mode

Connect device to debug port, and open debug console. See more : How_to_debug.

Press "ctrl + c" key before power up the device, until get the following information on debug console : 

Hit any key to stop autoboot: 0
=> <INTERRUPT>
=>

Then you can input the following cammand to config Multi-Display.

Module Sub Module Debian uboot
Single HDMI fw_setenv display0 hdmi0-default
fw_setenv display1
fw_setenv display2
fw_setenv display3
setenv display0 hdmi0-default
setenv display1
setenv display2
setenv display3
saveenv
DP fw_setenv display0
fw_setenv display1 
fw_setenv display2 dp0-default
fw_setenv display3
setenv display0
setenv display1 
setenv display2 dp0-default
setenv display3
saveenv
eDP fw_setenv display0
fw_setenv display1 edp1-1366x768
fw_setenv display2
fw_setenv display3
setenv display0
setenv display1 edp1-1366x768
setenv display2
setenv display3
saveenv
LVDS fw_setenv display0
fw_setenv display1
fw_setenv display2  
fw_setenv display3 lvds0-g070vw01
setenv display0
setenv display1
setenv display2  
setenv display3 lvds0-g070vw01
saveenv
MIPI fw_setenv display0
fw_setenv display1
fw_setenv display2
fw_setenv display3 mipi1-gl0uan
setenv display0
setenv display1
setenv display2
setenv display3 mipi1-gl0uan
saveenv
Dual HDMI + DP fw_setenv display0 hdmi0-default
fw_setenv display1
fw_setenv display2 dp0-default
fw_setenv display3
setenv display0 hdmi0-default
setenv display1
setenv display2 dp0-default
setenv display3
saveenv
HDMI + eDP fw_setenv display0 hdmi0-default
fw_setenv display1 edp1-1366x768
fw_setenv display2
fw_setenv display3 
setenv display0 hdmi0-default
setenv display1 edp1-1366x768
setenv display2
setenv display3
saveenv
HDMI + LVDS fw_setenv display0 hdmi0-default
fw_setenv display1
fw_setenv display2
fw_setenv display3 lvds0-g070vw01
setenv display0 hdmi0-default
setenv display1
setenv display2
setenv display3 lvds0-g070vw01
saveenv
HDMI + MIPI fw_setenv display0 hdmi0-default
fw_setenv display1
fw_setenv display2
fw_setenv display3 mipi1-gl0uan
setenv display0 hdmi0-default
setenv display1
setenv display2
setenv display3 mipi1-gl0uan
saveenv
DP + eDP fw_setenv display0
fw_setenv display1 edp1-1366x768
fw_setenv display2 dp0-default
fw_setenv display3 
setenv display0
setenv display1 edp1-1366x768
setenv display2 dp0-default
setenv display3
saveenv
DP + LVDS fw_setenv display0
fw_setenv display1
fw_setenv display2 dp0-default
fw_setenv display3 lvds0-g070vw01
setenv display0
setenv display1
setenv display2 dp0-default
setenv display3 lvds0-g070vw01
saveenv
DP + MIPI fw_setenv display0
fw_setenv display1
fw_setenv display2 dp0-default
fw_setenv display3 mipi1-gl0uan
setenv display0
setenv display1
setenv display2 dp0-default
setenv display3 mipi1-gl0uan
saveenv
eDP + LVDS fw_setenv display0
fw_setenv display1 edp1-default
fw_setenv display2
fw_setenv display3 lvds0-g070vw01
setenv display0
setenv display1 edp1-default
setenv display2
setenv display3 lvds0-g070vw01
saveenv
eDP + MIPI fw_setenv display0
fw_setenv display1 edp1-default
fw_setenv display2
fw_setenv display3 mipi1-gl0uan
setenv display0
setenv display1 edp1-default
setenv display2
setenv display3 mipi1-gl0uan
saveenv
Triple HDMI + DP  +  eDP fw_setenv display0 hdmi0-default
fw_setenv display1 edp1-default
fw_setenv display2 dp0-default
fw_setenv display3
setenv display0 hdmi0-default
setenv display1 edp1-default
setenv display2 dp0-default
setenv display3
saveenv
HDMI + DP  + LVDS  fw_setenv display0 hdmi0-default
fw_setenv display1
fw_setenv display2 dp0-default
fw_setenv display3 lvds0-g215hvn01
setenv display0 hdmi0-default
setenv display1
setenv display2 dp0-default
setenv display3 lvds0-g215hvn01
saveenv
HDMI + DP  + MIPI fw_setenv display0 hdmi0-default
fw_setenv display1
fw_setenv display2 dp0-default
fw_setenv display3 mipi1-gl0uan
setenv display0 hdmi0-default
setenv display1
setenv display2 dp0-default
setenv display3 mipi1-gl0uan
saveenv
HDMI + eDP + LVDS fw_setenv display0 hdmi0-default
fw_setenv display1 edp1-default
fw_setenv display2
fw_setenv display3 lvds0-g070vw01
setenv display0 hdmi0-default
setenv display1 edp1-default
setenv display2
setenv display3 lvds0-g070vw01
saveenv
HDMI + eDP + MIPI fw_setenv display0 hdmi0-default
fw_setenv display1 edp1-default
fw_setenv display2
fw_setenv display3 mipi1-gl0uan
setenv display0 hdmi0-default
setenv display1 edp1-default
setenv display2
setenv display3 mipi1-gl0uan
saveenv
DP + eDP + LVDS fw_setenv display0
fw_setenv display1 edp1-default
fw_setenv display2 dp0-default
fw_setenv display3 lvds0-g070vw01
setenv display0
setenv display1 edp1-default
setenv display2 dp0-default
setenv display3 lvds0-g070vw01
saveenv
DP + eDP + MIPI fw_setenv display0
fw_setenv display1 edp1-default
fw_setenv display2 dp0-default
fw_setenv display3 mipi1-gl0uan
setenv display0
setenv display1 edp1-default
setenv display2 dp0-default
setenv display3 mipi1-gl0uan
saveenv
Quadruple HDMI + DP  + LVDS + eDP fw_setenv display0 hdmi0-default
fw_setenv display1 edp1-1366x768
fw_setenv display2 dp0-default
fw_setenv display3 lvds0-g070vw01
setenv display0 hdmi0-default
setenv display1 edp1-1366x768
setenv display2 dp0-default
setenv display3 lvds0-g070vw01
saveenv
HDMI + DP  + MIPI + eDP fw_setenv display0 hdmi0-default
fw_setenv display1 edp1-1366x768
fw_setenv display2 dp0-default
fw_setenv display3 mipi1-gl0uan
setenv display0 hdmi0-default
setenv display1 edp1-1366x768
setenv display2 dp0-default
setenv display3 mipi1-gl0uan
saveenv

Default Support Display

Port

ROM-6881

edp edp1-1920x1200
edp1-1366x768
lvds

lvds0-g070vw01 
lvds0-g150xgel05
lvds0-g215hvn01

hdmi hdmi0-default
dp dp0-default
mipi mipi1-gl0uan


NOTE : 

1. The name of the panel must begin with "edp1-"、"lvds0-" 、"hdmi0-" “dp0-” or “mipi1-”.

And it can be found in "kernel/include/dt-bindings/display/screen-timing/{LCDNAME}.dtsi" like :

lvds0_g070vw01: lvds0-g070vw01

2. If there is no configuration, you will get default setting :

hdmi0-default、dp0-default、edp1-1366x768 and lvds0-g070vw01as default setting.

3. Check your configuration in Terminal or debug console.

fw_printenv | grep display
... 
display0=hdmi0-default
display1=edp1-1366x768
...
LVDS Name Resolution Channel
lvds0-g070vw01 800x480 single
lvds0-g150xgel05 1024x768 single
lvds0-g215hvn01 1920x1080 dual

Using envtools in Debian/Android

Using envtools to setup envs in Debian/Android OS is very similar in uboot.

Take “eDP+HDMI”for example :

In uboot In Debian/Android
setenv display0 hdmi0-default fw_setenv display0 hdmi0-default
setenv display1 edp1-1920x1080 fw_setenv display1 edp1-1920x1080
saveenv  
reset reboot

Note :

The tool "fw_setenv" will save envs automatically in Debian/Android OS, so it isn't necessary to saveenv manually.