|
发表于 2022-3-16 09:31:59
楼主
此案例固件仅支持HDMI、DM-M10R800 V2 MIPI屏模模组、DM-M10R800 LVDS屏幕模组做三屏异显,不支持edp,如果想实现HDMI+eDP做双屏异显,要做到以下三步,前提是eDP屏已经调试好,如果未调试可以参考,kernel/arch/arm64/boot/dts/rockchip/rk3568-firefly-aioj-edp_M156X40.dts, 以下说明,基于此dts做说明
第一步:VP的挂载,hdmi和edp均支持挂载在vp0和vp1,因此有两种方案,分别是hdmi(vp0)+edp(vp1)和hdmi(vp1)+edp(vp0),以hdmi(vp0)+edp(vp1)做示例,在dts下添加如下:
- &edp_phy {
- status = "okay";
- };
- &route_edp {
- status = "okay";
- connect = <&vp1_out_edp>;
- };
- &edp_in_vp0 {
- status = "disabled";
- };
- &edp_in_vp1 {
- status = "okay";
- };
- &route_hdmi {
- status = "okay";
- connect = <&vp0_out_hdmi>;
- };
- &hdmi {
- status = "okay";
- };
- &hdmi_in_vp0 {
- status = "okay";
- };
- &hdmi_in_vp1 {
- status = "disabled";
- };
复制代码
第二步:配置主副屏
可以配置HDMI做主屏或者edp做主屏,以下是HDMI主屏,EDP做副屏,补丁如下:
- diff --git a/device/rockchip/rk356x/rk3568_firefly_aioj/rk3568_firefly_aioj.mk b/device/rockchip/rk356x/rk3568_firefly_aioj/rk3568_firefly_aioj.mk
- index 538b45b..5d5ef42 100644
- --- a/device/rockchip/rk356x/rk3568_firefly_aioj/rk3568_firefly_aioj.mk
- +++ b/device/rockchip/rk356x/rk3568_firefly_aioj/rk3568_firefly_aioj.mk
- @@ -42,6 +42,7 @@ PRODUCT_AAPT_PREF_CONFIG := mdpi
- ## add Rockchip properties
- #
- PRODUCT_PROPERTY_OVERRIDES += vendor.hwc.device.primary=HDMI-A
- +PRODUCT_PROPERTY_OVERRIDES += vendor.hwc.device.extend=eDP
- PRODUCT_PROPERTY_OVERRIDES += ro.sf.lcd_density=280
- PRODUCT_PROPERTY_OVERRIDES += ro.wifi.sleep.power.down=true
复制代码
第三步:添加DoubleScreen 异显demo app编译
- diff --git a/device/rockchip/rk356x/rk3568_firefly_aioj/rk3568_firefly_aioj.mk b/device/rockchip/rk356x/rk3568_firefly_aioj/rk3568_firefly_aioj.mk
- index 538b45b..bc7e110 100644
- --- a/device/rockchip/rk356x/rk3568_firefly_aioj/rk3568_firefly_aioj.mk
- +++ b/device/rockchip/rk356x/rk3568_firefly_aioj/rk3568_firefly_aioj.mk
- @@ -54,6 +54,9 @@ PRODUCT_PROPERTY_OVERRIDES += persist.dhcpserver.enable=1
- BOARD_HAVE_DONGLE := true
- #BOARD_HAS_RK_4G_MODEM := true
-
- +PRODUCT_PACKAGES += \
- + DoubleScreen
- +
- #for gnss
- BOARD_HAS_GPS := false
复制代码
最后是编译固件,命令仅供参考,根据实际调试编译固件
- ./FFTools/make.sh -d rk3568-firefly-aioj-edp_M156X40 -j8 -l rk3568_firefly_aioj-userdebug
- ./FFTools/mkupdate/mkupdate.sh -l rk3568_firefly_aioj-userdebug
复制代码
烧录新的固件,打开DoubleScreen app就可以看到hdmi和edp播放不同的内容了 |
|