阅读背景:

VSDK modify HDMI resolution

来源:互联网 
From ec4c72aeea8ae48c63ead8bf972cfd72cf222157 Mon Sep 17 00:00:00 2001 Date: Mon, 10 Sep 2018 18:22:30 +0800 Subject: [PATCH 1/2] changed the resolution 1920*720 as shron --- apps/src/rtos/usecases/common/chains_common.c | 31 +++++++++++++++++++++++---- 1 file changed, 27 insertions(+), 4 deletions(-) diff --git a/apps/src/rtos/usecases/common/chains_common.c b/apps/src/rtos/usecases/common/chains_common.c index 94005f5..8b09ed6 100644 --- a/apps/src/rtos/usecases/common/chains_common.c +++ b/apps/src/rtos/usecases/common/chains_common.c @@ -104,8 +104,9 @@ Void ChainsCommon_GetDisplayWidthHeight( *displayHeight = 720; break; case CHAINS_DISPLAY_TYPE_HDMI_1080P: + Vps_printf(" >>>>> CHAINS_DISPLAY_TYPE_HDMI_1080P !!!\n"); *displayWidth = 1920; - *displayHeight = 1080; + *displayHeight = 720; break; case CHAINS_DISPLAY_TYPE_SDTV_NTSC: *displayWidth = 720; @@ -488,7 +489,9 @@ static Void ChainsCommon_SetDctrlConfig( } else if (displayType == CHAINS_DISPLAY_TYPE_HDMI_1080P) { - pVInfo->mInfo.standard = SYSTEM_STD_1080P_60; +// pVInfo->mInfo.standard = SYSTEM_STD_1080P_60; + pVInfo->mInfo.standard = SYSTEM_STD_CUSTOM; + } else if(displayType == CHAINS_DISPLAY_TYPE_SDTV_NTSC) { @@ -508,7 +511,25 @@ static Void ChainsCommon_SetDctrlConfig( { pVInfo->mInfo.standard = SYSTEM_STD_WXGA_60; } - + + if(displayType == CHAINS_DISPLAY_TYPE_HDMI_1080P) + { + pVInfo->mInfo.standard = SYSTEM_STD_CUSTOM; + pVInfo->mInfo.width = 1920; + pVInfo->mInfo.height = 720; + pVInfo->mInfo.scanFormat = SYSTEM_SF_PROGRESSIVE; //0 --1 + pVInfo->mInfo.pixelClock = 100980U; + pVInfo->mInfo.fps = 60U; + pVInfo->mInfo.hFrontPorch = 88U; + pVInfo->mInfo.hBackPorch = 148U; + pVInfo->mInfo.hSyncLen = 44U; + + pVInfo->mInfo.vFrontPorch = 4U; + pVInfo->mInfo.vBackPorch = 36U; + pVInfo->mInfo.vSyncLen = 5U; + + Vps_printf(" >>>>> set CHAINS_DISPLAY_TYPE_HDMI_1080P !!!\n"); + } /* TODO Dont know what to set here */ pVInfo->mode = 0; pVInfo->isInputPipeConnected[0] = @@ -1087,6 +1108,7 @@ Int32 ChainsCommon_MultiDisplay_StartDisplayCtrl( } else if (pMultiPrm[i].displayType == CHAINS_DISPLAY_TYPE_HDMI_1080P) { + Vps_printf(" >>>> pMultiPrm[i].displayType == CHAINS_DISPLAY_TYPE_HDMI_1080P \n"); pPrm->deviceId = DISPLAYCTRL_LINK_USE_HDMI; pVInfo->vencId = SYSTEM_DCTRL_DSS_VENC_HDMI; pVInfo->outputPort = SYSTEM_DCTRL_DSS_HDMI_OUTPUT; @@ -1300,7 +1322,8 @@ Int32 ChainsCommon_StartDisplayDevice(UInt32 displayType) if(displayType == CHAINS_DISPLAY_TYPE_HDMI_1080P) { - gChains_commonObj.hdmiTxPrm.standard = SYSTEM_STD_1080P_60; +// gChains_commonObj.hdmiTxPrm.standard = SYSTEM_STD_1080P_60; + gChains_commonObj.hdmiTxPrm.standard = SYSTEM_STD_CUSTOM; } if(displayType == CHAINS_DISPLAY_TYPE_HDMI_720P) { -- 2.7.4 From 55323b118c184eb1d8b9848ada8e9654b8bd987f Mon Sep 17 00:00:00 2001 Date: Mon, 10 Sep 2018 19:57:09 +0800 Subject: [PATCH 2/2] modified the resolution from 1080p to 1920*720 --- .../chains_dispDistSrc_dualDisplay.c | 4 +-- apps/src/hlos/common/chains_common.c | 27 ++++++++++++++-- apps/src/rtos/usecases/common/chains_common.c | 37 +++++++++++----------- 3 files changed, 45 insertions(+), 23 deletions(-) diff --git a/apps/src/hlos/adas/src/usecases/disp_dist_src_dual_display/chains_dispDistSrc_dualDisplay.c b/apps/src/hlos/adas/src/usecases/disp_dist_src_dual_display/chains_dispDistSrc_dualDisplay.c index 6846b07..3f39374 100644 --- a/apps/src/hlos/adas/src/usecases/disp_dist_src_dual_display/chains_dispDistSrc_dualDisplay.c +++ b/apps/src/hlos/adas/src/usecases/disp_dist_src_dual_display/chains_dispDistSrc_dualDisplay.c @@ -68,9 +68,9 @@ Limited License. #include <src/hlos/common/chains_common.h> #define VID1_FRAME_WIDTH (1920) -#define VID1_FRAME_HEIGHT (1080) +#define VID1_FRAME_HEIGHT (720) #define GFX_FRAME_WIDTH (1920) -#define GFX_FRAME_HEIGHT (1080) +#define GFX_FRAME_HEIGHT (720) #define GFX_V_CONTROLLER_NAME "/dev/vdrm-controller-0" #define GFX_CRTC (26) diff --git a/apps/src/hlos/common/chains_common.c b/apps/src/hlos/common/chains_common.c index 5172512..8674bd6 100644 --- a/apps/src/hlos/common/chains_common.c +++ b/apps/src/hlos/common/chains_common.c @@ -1133,7 +1133,7 @@ Void ChainsCommon_GetDisplayWidthHeight( break; case CHAINS_DISPLAY_TYPE_HDMI_1080P: *displayWidth = 1920; - *displayHeight = 1080; + *displayHeight = 720; break; case CHAINS_DISPLAY_TYPE_FPD: *displayWidth = 1280; @@ -1914,12 +1914,35 @@ static Void ChainsCommon_SetDctrlConfig( } else if (displayType == CHAINS_DISPLAY_TYPE_HDMI_1080P) { - pVInfo->mInfo.standard = SYSTEM_STD_1080P_60; +// pVInfo->mInfo.standard = SYSTEM_STD_1080P_60; + pVInfo->mInfo.standard = SYSTEM_STD_CUSTOM; + + + } else if (displayType == CHAINS_DISPLAY_TYPE_FPD) { pVInfo->mInfo.standard = SYSTEM_STD_720P_60; } + + if(displayType == CHAINS_DISPLAY_TYPE_HDMI_1080P) + { + pVInfo->mInfo.standard = SYSTEM_STD_CUSTOM; + pVInfo->mInfo.width = 1920; + pVInfo->mInfo.height = 720; + pVInfo->mInfo.scanFormat = SYSTEM_SF_PROGRESSIVE; //0 --1 + pVInfo->mInfo.pixelClock = 100980U; + pVInfo->mInfo.fps = 60U; + pVInfo->mInfo.hFrontPorch = 88U; + pVInfo->mInfo.hBackPorch = 148U; + pVInfo->mInfo.hSyncLen = 44U; + + pVInfo->mInfo.vFrontPorch = 4U; + pVInfo->mInfo.vBackPorch = 36U; + pVInfo->mInfo.vSyncLen = 5U; + + Vps_printf(" >>>>> set CHAINS_DISPLAY_TYPE_HDMI_1080P !!!\n"); + } /* TODO Dont know what to set here */ pVInfo->mode = 0; diff --git a/apps/src/rtos/usecases/common/chains_common.c b/apps/src/rtos/usecases/common/chains_common.c index 8b09ed6..b3f47f7 100644 --- a/apps/src/rtos/usecases/common/chains_common.c +++ b/apps/src/rtos/usecases/common/chains_common.c @@ -512,24 +512,6 @@ static Void ChainsCommon_SetDctrlConfig( pVInfo->mInfo.standard = SYSTEM_STD_WXGA_60; } - if(displayType == CHAINS_DISPLAY_TYPE_HDMI_1080P) - { - pVInfo->mInfo.standard = SYSTEM_STD_CUSTOM; - pVInfo->mInfo.width = 1920; - pVInfo->mInfo.height = 720; - pVInfo->mInfo.scanFormat = SYSTEM_SF_PROGRESSIVE; //0 --1 - pVInfo->mInfo.pixelClock = 100980U; - pVInfo->mInfo.fps = 60U; - pVInfo->mInfo.hFrontPorch = 88U; - pVInfo->mInfo.hBackPorch = 148U; - pVInfo->mInfo.hSyncLen = 44U; - - pVInfo->mInfo.vFrontPorch = 4U; - pVInfo->mInfo.vBackPorch = 36U; - pVInfo->mInfo.vSyncLen = 5U; - - Vps_printf(" >>>>> set CHAINS_DISPLAY_TYPE_HDMI_1080P !!!\n"); - } /* TODO Dont know what to set here */ pVInfo->mode = 0; pVInfo->isInputPipeConnected[0] = @@ -1127,7 +1109,24 @@ Int32 ChainsCommon_MultiDisplay_StartDisplayCtrl( pVInfo->vencOutputInfo.pixelClkPolarity = SYSTEM_DCTRL_POLARITY_ACT_HIGH; pVInfo->vencOutputInfo.aFmt = SYSTEM_DCTRL_A_OUTPUT_MAX; - pVInfo->mInfo.standard = SYSTEM_STD_1080P_60; +// pVInfo->mInfo.standard = SYSTEM_STD_CUSTOM; + pVInfo->mInfo.standard = SYSTEM_STD_CUSTOM; + pVInfo->mInfo.width = 1920; + pVInfo->mInfo.height = 720; + pVInfo->mInfo.scanFormat = SYSTEM_SF_PROGRESSIVE; //0 --1 + pVInfo->mInfo.pixelClock = 100980U; + pVInfo->mInfo.fps = 60U; + pVInfo->mInfo.hFrontPorch = 88U; + pVInfo->mInfo.hBackPorch = 148U; + pVInfo->mInfo.hSyncLen = 44U; + pVInfo->vencDivisorInfo.divisorLCD = 1; + pVInfo->vencDivisorInfo.divisorPCD = 1; + + pVInfo->mInfo.vFrontPorch = 4U; + pVInfo->mInfo.vBackPorch = 36U; + pVInfo->mInfo.vSyncLen = 5U; + + Vps_printf(" >>>>> set CHAINS_DISPLAY_TYPE_HDMI_1080P !!!\n"); /* Configure overlay params */ ovlyPrms[i].vencId = pVInfo->vencId; --From ec4c72aeea8ae48c63ead8bf972cfd72cf222157 Mon


你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: