Difference between revisions of "How to Config Multi-Display RK3568"
Yunjin.jiang (talk | contribs) |
Yunjin.jiang (talk | contribs) |
||
Line 1: | Line 1: | ||
− | |||
− | + | RK3568 has 3 VPorts. | |
− | + | [[File:RK3568 Vport.png|RTENOTITLE]] | |
− | + | RSB-4810/ROM-5880 surport 4 types display : eDP、LVDS、HDMI、MIPI. | |
− | + | '''Note:''' | |
− | + | 1. HDMI、eDP、MIPI MUST be set to port 0 and port 1. | |
− | + | 2. LVDS MUST be set to port 1 and port 2. | |
− | + | 3. LVDS and MIPI are alternative. | |
− | + | | |
− | + | | |
− | + | == Enter U-boot interrupt mode == | |
− | + | Connect device to debug port, and open debug console. See more : [http://ess-wiki.advantech.com.tw/view/How_to_debug_RK3568 How_to_debug]. | |
− | <pre> | + | Press "ctrl + c" key before power up the device, until get the following information on debug console : |
− | Hit any key to stop autoboot: 0 | + | <pre>Hit any key to stop autoboot: 0 |
− | = | + | => <INTERRUPT> |
− | = | + | => |
</pre> | </pre> | ||
− | + | Then you can input the following cammand to config Multi-Display. | |
− | + | {| border="1" cellpadding="0" cellspacing="0" style="width: 655px;" width="494" | |
− | + | |- | |
− | + | | height="20" width="72" | Module | |
− | + | | width="133" | Sub Module | |
− | + | | width="289" | Step | |
− | + | | style="width: 326px;" width="289" | In Uboot | |
− | + | |- | |
− | + | | height="240" rowspan="4" width="72" | Single | |
− | + | | width="133" | HDMI | |
− | + | | width="289" | fw_setenv display0 hdmi-default<br/> fw_setenv display1<br/> fw_setenv display2 | |
− | + | | style="width: 326px;" width="289" | | |
− | + | setenv display0 hdmi-default<br/> setenv display1<br/> setenv display2 | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | < | + | |- |
+ | | height="60" width="133" | LVDS | ||
+ | | width="289" | fw_setenv display0<br/> fw_setenv display1 lvds-g070vw01<br/> fw_setenv display2 | ||
+ | | style="width: 326px;" width="289" | setenv display0<br/> setenv display1 lvds-g070vw01<br/> setenv display2 | ||
+ | |- | ||
+ | | height="60" width="133" | eDP | ||
+ | | width="289" | fw_setenv display0 edp-1366x768<br/> fw_setenv display1<br/> fw_setenv display2 | ||
+ | | style="width: 326px;" width="289" | setenv display0 edp-1366x768<br/> setenv display1<br/> setenv display2 | ||
+ | |- | ||
+ | | height="60" width="133" | MIPI | ||
+ | | width="289" | fw_setenv display0 mipi-gl0uan<br/> fw_setenv display1<br/> fw_setenv display2 | ||
+ | | style="width: 326px;" width="289" | setenv display0 mipi-gl0uan<br/> setenv display1<br/> setenv display2 | ||
+ | |- | ||
+ | | height="300" rowspan="5" width="72" | Dual | ||
+ | | width="133" | HDMI+LVDS | ||
+ | | width="289" | fw_setenv display0 hdmi-default<br/> fw_setenv display1 lvds-g070vw01<br/> fw_setenv display2 | ||
+ | | style="width: 326px;" width="289" | setenv display0 hdmi-default<br/> setenv display1 lvds-g070vw01<br/> setenv display2 | ||
+ | |- | ||
+ | | height="60" width="133" | HDMI+eDP | ||
+ | | width="289" | fw_setenv display0 hdmi-default<br/> fw_setenv display1 edp-1366x768<br/> fw_setenv display2 | ||
+ | | style="width: 326px;" width="289" | setenv display0 hdmi-default<br/> setenv display1 edp-1366x768<br/> setenv display2 | ||
+ | |- | ||
+ | | height="60" width="133" | eDP+LVDS | ||
+ | | width="289" | fw_setenv display0 edp-1366x768<br/> fw_setenv display1 lvds-g070vw01<br/> fw_setenv display2 | ||
+ | | style="width: 326px;" width="289" | setenv display0 edp-1366x768<br/> setenv display1 lvds-g070vw01<br/> setenv display2 | ||
+ | |- | ||
+ | | height="60" width="133" | HDMI+MIPI | ||
+ | | width="289" | fw_setenv display0 hdmi-default<br/> fw_setenv display1 mipi-gl0uan<br/> fw_setenv display2 | ||
+ | | style="width: 326px;" width="289" | setenv display0 hdmi-default<br/> setenv display1 mipi-gl0uan<br/> setenv display2 | ||
+ | |- | ||
+ | | height="60" width="133" | eDP+MIPI | ||
+ | | width="289" | fw_setenv display0 edp-1366x768<br/> fw_setenv display1 mipi-gl0uan<br/> fw_setenv display2 | ||
+ | | style="width: 326px;" width="289" | setenv display0 edp-1366x768<br/> setenv display1 mipi-gl0uan<br/> setenv display2 | ||
+ | |} | ||
− | + | '''Note :''' | |
− | + | LVDS panel support 4 bus format: rgb666_vesa、rgb888_vesa、rgb666_jeida、rgb888_jeida. | |
− | <pre> | + | If lvds panel is not the default format of rgb888_vesa, Must set lvds format : |
− | fw_setenv lvds_format rgb666_vesa | + | <pre>fw_setenv lvds_format rgb666_vesa |
or | or | ||
fw_setenv lvds_format rgb666_jeida | fw_setenv lvds_format rgb666_jeida | ||
Line 142: | Line 91: | ||
</pre> | </pre> | ||
− | + | == Default Support Display == | |
− | + | {| border="1" cellpadding="1" cellspacing="1" | |
− | + | |- | |
− | + | | '''Port''' | |
− | + | | | |
− | + | '''RSB-4810''' | |
− | |||
− | + | '''ROM-5880''' | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | |- | |
+ | | edp | ||
+ | | edp-1920x1080<br/> edp-1366x768 | ||
+ | |- | ||
+ | | lvds | ||
+ | | | ||
+ | lvds-g070vw01<br/> lvds-g150xgel05 | ||
− | + | lvds-800x480 | |
− | + | lvds-1024x768 | |
− | + | lvds-1280x720 | |
− | + | lvds-1280x768 | |
− | + | lvds-1280x800 | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | lvds-1366x768 | |
− | |||
− | + | |- | |
+ | | hdmi | ||
+ | | hdmi-default | ||
+ | |- | ||
+ | | mipi | ||
+ | | mipi-gl0uan | ||
+ | |} | ||
− | < | + | <br/> '''NOTE : ''' |
− | + | 1. The name of the panel must begin with "edp-"、"lvds-" 、"hdmi-" or “dp-”. | |
− | + | And it can be found in "kernel/include/dt-bindings/display/screen-timing/{LCDNAME}.dtsi" like : | |
− | + | lvds_g070vw01: '''lvds-g070vw01''' | |
− | + | 2. If there is no configuration, you will get default setting : | |
− | <pre> | + | hdmi-default and edp-1366x768 as default setting. |
− | fw_printenv | grep display | + | |
+ | 3. Check your configuration in Terminal or debug console. | ||
+ | <pre>fw_printenv | grep display | ||
... | ... | ||
display0=hdmi-default | display0=hdmi-default | ||
Line 212: | Line 149: | ||
</pre> | </pre> | ||
− | + | {| border="1" cellpadding="1" cellspacing="1" | |
− | + | |- | |
− | + | | LVDS Name | |
− | + | | Resolution | |
− | + | |- | |
− | + | | lvds-g070vw01 | |
− | + | | 800x480 | |
− | + | |- | |
− | + | | lvds-g150xgel05 | |
− | + | | 1024x768 | |
− | + | |} | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | == Using envtools in Debian/Android == | |
− | + | Using envtools to setup envs in Debian/Android OS is very similar in uboot. | |
− | + | Take “eDP+HDMI”for example : | |
− | + | {| border="1" cellpadding="1" cellspacing="1" | |
− | + | |- | |
− | + | | '''In uboot''' | |
− | + | | '''In Debian/Android''' | |
− | + | |- | |
− | + | | setenv display0 hdmi-default | |
− | + | | fw_setenv display0 hdmi-default | |
− | + | |- | |
− | + | | setenv display1 edp-1920x1080 | |
− | + | | fw_setenv display0 edp-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. |
Revision as of 03:03, 12 April 2023
RK3568 has 3 VPorts.
RSB-4810/ROM-5880 surport 4 types display : eDP、LVDS、HDMI、MIPI.
Note:
1. HDMI、eDP、MIPI MUST be set to port 0 and port 1.
2. LVDS MUST be set to port 1 and port 2.
3. LVDS and MIPI 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 | Step | In Uboot |
Single | HDMI | fw_setenv display0 hdmi-default fw_setenv display1 fw_setenv display2 |
setenv display0 hdmi-default |
LVDS | fw_setenv display0 fw_setenv display1 lvds-g070vw01 fw_setenv display2 |
setenv display0 setenv display1 lvds-g070vw01 setenv display2 | |
eDP | fw_setenv display0 edp-1366x768 fw_setenv display1 fw_setenv display2 |
setenv display0 edp-1366x768 setenv display1 setenv display2 | |
MIPI | fw_setenv display0 mipi-gl0uan fw_setenv display1 fw_setenv display2 |
setenv display0 mipi-gl0uan setenv display1 setenv display2 | |
Dual | HDMI+LVDS | fw_setenv display0 hdmi-default fw_setenv display1 lvds-g070vw01 fw_setenv display2 |
setenv display0 hdmi-default setenv display1 lvds-g070vw01 setenv display2 |
HDMI+eDP | fw_setenv display0 hdmi-default fw_setenv display1 edp-1366x768 fw_setenv display2 |
setenv display0 hdmi-default setenv display1 edp-1366x768 setenv display2 | |
eDP+LVDS | fw_setenv display0 edp-1366x768 fw_setenv display1 lvds-g070vw01 fw_setenv display2 |
setenv display0 edp-1366x768 setenv display1 lvds-g070vw01 setenv display2 | |
HDMI+MIPI | fw_setenv display0 hdmi-default fw_setenv display1 mipi-gl0uan fw_setenv display2 |
setenv display0 hdmi-default setenv display1 mipi-gl0uan setenv display2 | |
eDP+MIPI | fw_setenv display0 edp-1366x768 fw_setenv display1 mipi-gl0uan fw_setenv display2 |
setenv display0 edp-1366x768 setenv display1 mipi-gl0uan setenv display2 |
Note :
LVDS panel support 4 bus format: rgb666_vesa、rgb888_vesa、rgb666_jeida、rgb888_jeida.
If lvds panel is not the default format of rgb888_vesa, Must set lvds format :
fw_setenv lvds_format rgb666_vesa or fw_setenv lvds_format rgb666_jeida or fw_setenv lvds_format rgb888_jeida
Default Support Display
Port |
RSB-4810 ROM-5880 |
edp | edp-1920x1080 edp-1366x768 |
lvds |
lvds-g070vw01 lvds-800x480 lvds-1024x768 lvds-1280x720 lvds-1280x768 lvds-1280x800 lvds-1366x768 |
hdmi | hdmi-default |
mipi | mipi-gl0uan |
NOTE :
1. The name of the panel must begin with "edp-"、"lvds-" 、"hdmi-" or “dp-”.
And it can be found in "kernel/include/dt-bindings/display/screen-timing/{LCDNAME}.dtsi" like :
lvds_g070vw01: lvds-g070vw01
2. If there is no configuration, you will get default setting :
hdmi-default and edp-1366x768 as default setting.
3. Check your configuration in Terminal or debug console.
fw_printenv | grep display ... display0=hdmi-default display1=edp-1366x768 ...
LVDS Name | Resolution |
lvds-g070vw01 | 800x480 |
lvds-g150xgel05 | 1024x768 |
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 hdmi-default | fw_setenv display0 hdmi-default |
setenv display1 edp-1920x1080 | fw_setenv display0 edp-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.