meson_display: add cvbs video mute api [1/1]
PD#OTT-58416
Problem:
add cvbs video mute api
Solution:
add cvbs video mute api
Verify:
kernel5.15-AH212
Change-Id: I517fbda179a0bdf5e56de3b2307dbe20cf5378fd
Signed-off-by: chen.wang1 <chen.wang1@amlogic.com>
diff --git a/display_framework/src/extension/display_settings/display_settings.h b/display_framework/src/extension/display_settings/display_settings.h
index 52aab24..dd3bbf0 100644
--- a/display_framework/src/extension/display_settings/display_settings.h
+++ b/display_framework/src/extension/display_settings/display_settings.h
@@ -174,6 +174,8 @@
int getDisplayPhysicalSize( int* width, int* height, DISPLAY_CONNECTOR_TYPE connType );
int getDisplaySignalTimingInfo(uint16_t* htotal, uint16_t* vtotal, uint16_t* hstart,
uint16_t* vstart, DISPLAY_CONNECTOR_TYPE connType);
+int getDisplayCvbsAVMute( );
+int setDisplayCvbsAVMute(bool mute);
int getDisplayIsBestMode(int* value);
int setDisplayBackGroundColor(unsigned char red, unsigned char green, unsigned char blue,
DISPLAY_CONNECTOR_TYPE connType);
diff --git a/display_framework/src/extension/display_settings/displayattribute/display_attribute.c b/display_framework/src/extension/display_settings/displayattribute/display_attribute.c
index d45e3f2..6fcf537 100644
--- a/display_framework/src/extension/display_settings/displayattribute/display_attribute.c
+++ b/display_framework/src/extension/display_settings/displayattribute/display_attribute.c
@@ -78,8 +78,7 @@
}
void getDisplayEDIDData(DISPLAY_CONNECTOR_TYPE connType, int * data_Len, char **data ) {
- int fd = 0;
- fd = display_meson_get_open();
+ int fd = display_meson_get_open();
if (data_Len == NULL || data == NULL) {
ERROR("%s %d invalid parameter return",__FUNCTION__,__LINE__);
return;
@@ -97,10 +96,9 @@
}
ENUM_DISPLAY_COLOR_SPACE getDisplayColorSpace(DISPLAY_CONNECTOR_TYPE connType) {
- int fd = 0;
char* str = NULL;
ENUM_DISPLAY_COLOR_SPACE displayColorSpace = DISPLAY_COLOR_SPACE_RESERVED;
- fd = display_meson_get_open();
+ int fd = display_meson_get_open();
ENUM_MESON_COLOR_SPACE colorSpace = meson_drm_getColorSpace(fd, connType);
meson_close_drm(fd);
switch (colorSpace) {
@@ -130,10 +128,8 @@
}
uint32_t getDisplayColorDepth(DISPLAY_CONNECTOR_TYPE connType) {
- int fd = 0;
- fd = display_meson_get_open();
- int value = 0;
- value = meson_drm_getColorDepth(fd, connType);
+ int fd = display_meson_get_open();
+ int value = meson_drm_getColorDepth(fd, connType);
meson_close_drm(fd);
DEBUG("%s %d get ColorDepth: %d",__FUNCTION__,__LINE__,value);
return value;
@@ -189,13 +185,12 @@
}
int getDisplayMode(DisplayModeInfo* modeInfo, DISPLAY_CONNECTOR_TYPE connType) {
- int fd = 0;
int ret = -1;
if (modeInfo == NULL) {
ERROR("%s %d modeInfo == NULL return",__FUNCTION__,__LINE__);
return ret;
}
- fd = display_meson_get_open();
+ int fd = display_meson_get_open();
ret = meson_drm_getModeInfo(fd, connType, modeInfo);
if (ret == -1) {
ERROR("%s %d get modeInfo fail",__FUNCTION__,__LINE__);
@@ -234,13 +229,12 @@
}
int getDisplayModesList(DisplayModeInfo** modeInfo, int* modeCount,DISPLAY_CONNECTOR_TYPE connType) {
- int fd = 0;
int ret = -1;
if (modeInfo == NULL || modeCount == NULL) {
ERROR(" %s %d invalid parameter return",__FUNCTION__,__LINE__);
return ret;
}
- fd = display_meson_get_open();
+ int fd = display_meson_get_open();
ret = meson_drm_getsupportedModesList(fd, modeInfo, modeCount,connType);
if (ret == -1) {
ERROR("%s %d get supported modeslist failed: ret %d errno %d",__FUNCTION__,__LINE__, ret, errno );
@@ -330,9 +324,8 @@
}
int getDisplayDvEnable(DISPLAY_CONNECTOR_TYPE connType ) {
- int fd = 0;
int ret = -1;
- fd = display_meson_get_open();
+ int fd = display_meson_get_open();
ret = meson_drm_getDvEnable(fd, connType );
if (ret == -1) {
ERROR("%s %d get DvEnable fail",__FUNCTION__,__LINE__);
@@ -343,14 +336,8 @@
}
int getDisplayActive(DISPLAY_CONNECTOR_TYPE connType ) {
- int fd = 0;
- fd = display_meson_get_open();
- int ret = -1;
- if (fd < 0) {
- ERROR("%s %d fd < 0",__FUNCTION__,__LINE__);
- return ret;
- }
- ret = meson_drm_getActive(fd, connType );
+ int fd = display_meson_get_open();
+ int ret = meson_drm_getActive(fd, connType );
if (ret == -1) {
ERROR("%s %d get active fail",__FUNCTION__,__LINE__);
}
@@ -360,20 +347,16 @@
}
int getDisplayVrrEnabled(DISPLAY_CONNECTOR_TYPE connType ) {
- int fd = 0;
- int ret = 0;
- fd = display_meson_get_open();
- ret = meson_drm_getVrrEnabled(fd, connType );
+ int fd = display_meson_get_open();
+ int ret = meson_drm_getVrrEnabled(fd, connType );
meson_close_drm(fd);
DEBUG("%s %d get VrrEnabled value: %d",__FUNCTION__,__LINE__,ret);
return ret;
}
int getDisplayAVMute(DISPLAY_CONNECTOR_TYPE connType ) {
- int fd = 0;
- fd = display_meson_get_open();
- int ret = 0;
- ret = meson_drm_getAVMute(fd, connType );
+ int fd = display_meson_get_open();
+ int ret = meson_drm_getAVMute(fd, connType );
meson_close_drm(fd);
DEBUG("%s %d get AVMute value: %d",__FUNCTION__,__LINE__,ret);
return ret;
@@ -499,10 +482,8 @@
}
int getDisplayFracRatePolicy(DISPLAY_CONNECTOR_TYPE connType ) {
- int fd = 0;
- fd = display_meson_get_open();
- int ret = -1;
- ret = meson_drm_getFracRatePolicy(fd, connType );
+ int fd = display_meson_get_open();
+ int ret = meson_drm_getFracRatePolicy(fd, connType );
meson_close_drm(fd);
DEBUG("%s %d get frac_rate value: %d",__FUNCTION__,__LINE__,ret);
return ret;
@@ -515,14 +496,13 @@
char color[5] = {'\0'};
int supportedcheck = -1;
int ret = -1;
- int fd = 0;
int ColorDepth = 0;
drmModeAtomicReq *req = NULL;
if (modeInfo == NULL) {
ERROR("%s %d invalid parameter return",__FUNCTION__,__LINE__);
return ret;
}
- fd = display_meson_get_open();
+ int fd = display_meson_get_open();
ret = meson_drm_getModeInfo(fd, connType, modeInfo);
if (ret == -1) {
ERROR("%s %d get modeInfo fail",__FUNCTION__,__LINE__);
@@ -577,8 +557,7 @@
}
int getDisplaySupportedDvMode( DISPLAY_CONNECTOR_TYPE connType ) {
- int fd = 0;
- fd = display_meson_get_open();
+ int fd = display_meson_get_open();
int value = meson_drm_getDvCap(fd, connType );
meson_close_drm(fd);
DEBUG("%s %d supported dvmode, dv_cap: %d, supported_dv_mode: %d\n",__FUNCTION__,__LINE__,
@@ -614,33 +593,25 @@
}
uint32_t getDisplayHDRSupportList(DISPLAY_CONNECTOR_TYPE connType) {
- int fd = 0;
- uint32_t hdrcap = 0;
- uint32_t dvcap = 0;
- uint32_t value_2 = 0;
- fd = display_meson_get_open();
- hdrcap = meson_drm_getHdrCap( fd, connType );
- dvcap = meson_drm_getDvCap( fd, connType );
- value_2 = getDisplayHDRSupportedList(hdrcap, dvcap);
- DEBUG("%s %d meson_drm_getHDRSupportedList return %d",__FUNCTION__,__LINE__,value_2);
+ int fd = display_meson_get_open();
+ uint64_t hdrcap = meson_drm_getHdrCap( fd, connType );
+ uint64_t dvcap = meson_drm_getDvCap( fd, connType );
+ uint32_t value = getDisplayHDRSupportedList(hdrcap, dvcap);
+ DEBUG("%s %d get hdr support list value %d",__FUNCTION__,__LINE__,value);
meson_close_drm(fd);
- return value_2;
+ return value;
}
uint32_t getDisplayDvCap(DISPLAY_CONNECTOR_TYPE connType) {
- int fd = 0;
- uint32_t value = 0;
- fd = display_meson_get_open();
- value = meson_drm_getDvCap(fd, connType );
+ int fd = display_meson_get_open();
+ uint32_t value = meson_drm_getDvCap(fd, connType );
meson_close_drm(fd);
return value;
}
int getDisplayDpmsStatus(DISPLAY_CONNECTOR_TYPE connType) {
- int fd = 0;
- fd = display_meson_get_open();
- int value = 0;
- value = meson_drm_getDpmsStatus(fd, connType);
+ int fd = display_meson_get_open();
+ int value = meson_drm_getDpmsStatus(fd, connType);
meson_close_drm(fd);
DEBUG("%s %d get dpms status %d",__FUNCTION__,__LINE__,value);
return value;
@@ -648,12 +619,11 @@
float getDisplayFrameRate(DISPLAY_CONNECTOR_TYPE connType) {
int ret = -1;
- int fd = 0;
float refresh = 0.00;
drmModeAtomicReq *req = NULL;
DisplayModeInfo* modeInfo = NULL;
modeInfo= (DisplayModeInfo*)malloc(sizeof(DisplayModeInfo));
- fd = display_meson_get_open();
+ int fd = display_meson_get_open();
ret = meson_drm_getModeInfo(fd, connType, modeInfo);
if (ret == -1) {
ERROR("%s %d get modeInfo fail",__FUNCTION__,__LINE__);
@@ -674,13 +644,12 @@
}
int getDisplayPlaneSize( int* width, int* height ) {
- int fd = 0;
int ret = -1;
if (width == NULL || height == NULL) {
ERROR("%s %d Error: One or both pointers are NULL.\n",__FUNCTION__,__LINE__);
return ret;
}
- fd = display_meson_get_open();
+ int fd = display_meson_get_open();
ret = meson_drm_getGraphicPlaneSize(fd, width, height);
if ( ret == 0) {
DEBUG("%s %d get graphic plane Size %d x %d",__FUNCTION__,__LINE__,*width, *height);
@@ -690,13 +659,12 @@
}
int getDisplayPhysicalSize( int* width, int* height, DISPLAY_CONNECTOR_TYPE connType ) {
- int fd = 0;
int ret = -1;
if (width == NULL || height == NULL) {
ERROR("%s %d Error: One or both pointers are NULL.\n",__FUNCTION__,__LINE__);
return ret;
}
- fd = display_meson_get_open();
+ int fd = display_meson_get_open();
ret = meson_drm_getPhysicalSize(fd, width, height, connType);
if ( ret == 0) {
DEBUG("%s %d get physical Size %d x %d",__FUNCTION__,__LINE__,*width, *height);
@@ -719,13 +687,12 @@
int getDisplaySignalTimingInfo(uint16_t* htotal, uint16_t* vtotal, uint16_t* hstart,
uint16_t* vstart, DISPLAY_CONNECTOR_TYPE connType) {
- int fd = 0;
int ret = -1;
if (htotal == NULL || vtotal == NULL || hstart == NULL || vstart == NULL) {
ERROR("%s %d Error: have pointers are NULL.\n",__FUNCTION__,__LINE__);
return ret;
}
- fd = display_meson_get_open();
+ int fd = display_meson_get_open();
ret = meson_drm_getSignalTimingInfo(fd, htotal, vtotal, hstart, vstart, connType);
if ( ret == 0) {
DEBUG("%s %d signal timingInfo htotal: %d vtotal: %d hstart: %d vstart: %d",
@@ -735,6 +702,14 @@
return ret;
}
+int getDisplayCvbsAVMute( ) {
+ int fd = display_meson_get_open();
+ int ret = meson_drm_getCvbsAVMute(fd, MESON_CONNECTOR_CVBS );
+ meson_close_drm(fd);
+ DEBUG("%s %d get cvbs video mute %d",__FUNCTION__,__LINE__,ret);
+ return ret;
+}
+
/* return 1: HDCP 1.4 supported*/
/* return 2: HDCP 2.2 supported*/
/* return 3: HDCP 1.4 and 2.2 all support*/
diff --git a/display_framework/src/extension/display_settings/meson/meson_settings.c b/display_framework/src/extension/display_settings/meson/meson_settings.c
index 9a92e51..76b3141 100644
--- a/display_framework/src/extension/display_settings/meson/meson_settings.c
+++ b/display_framework/src/extension/display_settings/meson/meson_settings.c
@@ -807,11 +807,9 @@
}
int setDisplayPlaneMute(unsigned int plane_type, unsigned int plane_mute) {
- int res = -1;
- int fd = -1;
DEBUG("%s %d set plane_type: %d plane_mute:%d",__FUNCTION__,__LINE__,plane_type,plane_mute);
- fd = display_meson_set_open();
- res = meson_drm_setPlaneMute(fd, plane_type, plane_mute);
+ int fd = display_meson_set_open();
+ int res = meson_drm_setPlaneMute(fd, plane_type, plane_mute);
if (res) {
ERROR("%s %d set plane mute fail",__FUNCTION__,__LINE__);
}
@@ -819,3 +817,32 @@
return res;
}
+int setDisplayCvbsAVMute(bool mute) {
+ int res = -1;
+ int ret = -1;
+ drmModeAtomicReq *req = NULL;
+ DEBUG(" %s %d set cvbs mute value %d",__FUNCTION__,__LINE__,mute);
+ int fd = display_meson_set_open();
+ req = drmModeAtomicAlloc();
+ if (req == NULL) {
+ DEBUG("%s %d invalid parameter return",__FUNCTION__,__LINE__);
+ goto out;
+ }
+ res = meson_drm_setCvbsAVMute(fd, req, mute, MESON_CONNECTOR_CVBS);
+ if (res == -1) {
+ ERROR("%s %d set avmute fail",__FUNCTION__,__LINE__);
+ goto out;
+ }
+ ret = drmModeAtomicCommit(fd, req, DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
+ if (ret) {
+ ERROR("%s %d drmModeAtomicCommit failed: ret %d errno %d", __FUNCTION__,__LINE__,ret, errno );
+ goto out;
+ }
+out:
+ if (req) {
+ drmModeAtomicFree(req);
+ req = NULL;
+ }
+ meson_close_drm(fd);
+ return ret;
+}
diff --git a/display_framework/src/extension/display_settings/meson/meson_settings_Test.c b/display_framework/src/extension/display_settings/meson/meson_settings_Test.c
index 3116bda..6eafe05 100644
--- a/display_framework/src/extension/display_settings/meson/meson_settings_Test.c
+++ b/display_framework/src/extension/display_settings/meson/meson_settings_Test.c
@@ -45,7 +45,8 @@
if (select_s == 0 && select_len == 1) {
printf("set:0->hdmi mode 1->cvbs mode 2->hdr policy 3->av mute 4->HDMI HDCP enable 5-><colorDepth, colorSpace>"
"6->HDCP Content Type 7->DvEnable 8->active 9->vrr Enable 10->auto mode 11->dummy mode 12->aspect ratio"
- "13->mode attr 14->FunctionAttribute 15->video zorder 16->dv mode 17->plane mute 18->background color\n");
+ "13->mode attr 14->FunctionAttribute 15->video zorder 16->dv mode 17->plane mute 18->background color"
+ "19->cvbs video mute\n");
len = scanf("%d",&set);
if (set == 0 && len == 1) {
printf("please input modeInfo:interlace, w, h, vrefresh\n");
@@ -286,6 +287,16 @@
} else {
printf("setDisplayBackGroundColor success\n");
}
+ } else if(set == 19 && len == 1){
+ printf("\n cvbs video mute:\n");
+ int mute = 0;
+ len = scanf("%d", &mute);
+ if (len == 1) {
+ if (setDisplayCvbsAVMute(mute))
+ printf("\n setDisplayCvbsAVMute fail:\n");
+ } else {
+ printf("\n scanf fail\n");
+ }
}
}
else if(select_s == 1 && select_len == 1) {
@@ -294,7 +305,7 @@
" 12->Dv Enable 13->active 14->vrr Enable 15->av mute 16->hdr mode 17->CvbsModesList 18-> mode support check"
" 19->current aspect ratio 20->event test 21->frac rate policy 22->Supported dvmode 23->hdr supportedlist "
" 24->DvCap 25->dpms status 26->mode support attrlist 27->framrate 28->primar plane fb size"
- " 29->physical size 30->Timing information 31->dv mode 32->rx supported hdcp version\n");
+ " 29->physical size 30->Timing information 31->dv mode 32->rx supported hdcp version 33->cvbs video mute\n");
len = scanf("%d",&get);
if (get == 0 && len == 1) {
ENUM_DISPLAY_HDR_POLICY value = getDisplayHDRPolicy( DISPLAY_CONNECTOR_HDMIA);
@@ -555,6 +566,9 @@
printf("\n get_prop fail\n");
}
}
+ } else if (get == 33 && len == 1) {
+ int value = getDisplayCvbsAVMute( );
+ printf("\n cvbs video mute:%d\n",value);
}
}
else {
diff --git a/display_framework/src/extension/display_settings/westeros/westeros_settings.c b/display_framework/src/extension/display_settings/westeros/westeros_settings.c
index df5f6e4..8b41d8a 100644
--- a/display_framework/src/extension/display_settings/westeros/westeros_settings.c
+++ b/display_framework/src/extension/display_settings/westeros/westeros_settings.c
@@ -77,7 +77,6 @@
int ret = -1;
int rc = -1;
int connId = -1;
- int fd = -1;
char cmdBuf[CMDBUF_SIZE] = {'\0'};
char* prop_name = NULL;
char resp[OUTPUT_SIZE] = {'\0'};
@@ -110,7 +109,6 @@
int setDisplayAVMute(int mute, DISPLAY_CONNECTOR_TYPE connType) {
int ret = -1;
int connId = -1;
- int fd = -1;
int rc = -1;
char cmdBuf[CMDBUF_SIZE] = {'\0'};
char* prop_name = NULL;
@@ -146,7 +144,6 @@
DISPLAY_CONNECTOR_TYPE connType) {
int ret = -1;
int connId = -1;
- int fd = -1;
char cmdBuf[CMDBUF_SIZE] = {'\0'};
char* space_prop_name = NULL;
char* depth_prop_name = NULL;
@@ -259,7 +256,6 @@
int ret = -1;
int rc = -1;
int connId = -1;
- int fd = -1;
char cmdBuf[CMDBUF_SIZE] = {'\0'};
char* prop_name = NULL;
char resp[OUTPUT_SIZE] = {'\0'};
@@ -567,6 +563,39 @@
return ret;
}
+int setDisplayCvbsAVMute(bool mute) {
+ int ret = -1;
+ int connId = -1;
+ int rc = -1;
+ char cmdBuf[CMDBUF_SIZE] = {'\0'};
+ char* prop_name = NULL;
+ char resp[OUTPUT_SIZE] = {'\0'};
+ connId = meson_drm_GetConnectorId(MESON_CONNECTOR_CVBS);
+ DEBUG("%s %d westeros set cvbs mute value %d connId %d",__FUNCTION__,__LINE__,
+ mute,connId);
+ if (connId > 0) {
+ prop_name = meson_drm_GetPropName(ENUM_MESON_DRM_CVBS_PROP_AVMUTE);
+ if (prop_name == NULL) {
+ ERROR("%s %d meson_drm_GetPropName return NULL",__FUNCTION__,__LINE__);
+ goto out;
+ }
+ DEBUG("%s %d get prop name %s",__FUNCTION__,__LINE__, prop_name);
+ snprintf(cmdBuf, sizeof(cmdBuf)-1, "set property -s %d:%s:%d", connId, prop_name, mute);
+ rc = wstDisplaySendMessage(cmdBuf,resp);
+ if (rc >= 0) {
+ ret = 0;
+ } else {
+ ERROR("%s %d send message fail",__FUNCTION__,__LINE__);
+ }
+ } else {
+ ERROR("%s %d meson_drm_GetConnectorId return fail",__FUNCTION__,__LINE__);
+ }
+out:
+ if (prop_name) {
+ free(prop_name);
+ }
+}
+
int getDisplayIsBestMode(int* value) {
char resp[OUTPUT_SIZE] = {'\0'};
char cmdBuf[CMDBUF_SIZE] = {'\0'};
diff --git a/display_framework/src/extension/display_settings/westeros/westeros_settings_Test.c b/display_framework/src/extension/display_settings/westeros/westeros_settings_Test.c
index a982ffa..88939c0 100644
--- a/display_framework/src/extension/display_settings/westeros/westeros_settings_Test.c
+++ b/display_framework/src/extension/display_settings/westeros/westeros_settings_Test.c
@@ -45,7 +45,7 @@
if (select_s == 0 && select_len == 1) {
printf("set:0->hdmi mode 1->cvbs mode 2->hdr policy 3->av mute 4->HDMI HDCP enable 5-><colorDepth, colorSpace>"
"6->HDCP Content Type 7->DvEnable 8->active 9->vrr Enable 10->auto mode 11->dummy mode 12->aspect ratio"
- " 13->scaling 14->the status of display 15->dv mode\n");
+ " 13->scaling 14->the status of display 15->dv mode 16->cvbs video mute\n");
len = scanf("%d",&set);
if (set == 0 && len == 1) {
printf("please input modeInfo:interlace, w, h, vrefresh\n");
@@ -231,6 +231,16 @@
}else{
printf("setDisplayDvMode Fail\n");
}
+ } else if(set == 16 && len == 1){
+ printf("\n cvbs avmute:\n");
+ int mute = 0;
+ len = scanf("%d", &mute);
+ if (len == 1) {
+ if (setDisplayCvbsAVMute(mute))
+ printf("\n setDisplayCvbsAVMute fail:\n");
+ } else {
+ printf("\n scanf fail\n");
+ }
}
}
else if(select_s == 1 && select_len == 1) {
@@ -240,7 +250,7 @@
"19->current aspect ratio 20->event test 21->frac rate policy 22->scaling 23->supported dvmode"
" 24->hdr supportedlist 25->DvCap 26->display enabled 27->dpms status 28->mode support attrlist 29->framrate"
" 30->primar plane fb size 31->physical size 32->Timing information 33->is bestmode 34->dv mode "
- " 35->rx supported hdcp version\n");
+ " 35->rx supported hdcp version 36->cvbs video mute\n");
len = scanf("%d",&get);
if (get == 0 && len == 1) {
ENUM_DISPLAY_HDR_POLICY value = getDisplayHDRPolicy( DISPLAY_CONNECTOR_HDMIA);
@@ -523,6 +533,9 @@
printf("\n get_prop fail\n");
}
}
+ } else if (get == 36 && len == 1) {
+ int value = getDisplayCvbsAVMute( );
+ printf("\n cvbs video mute:%d\n",value);
}
}
else {
diff --git a/display_framework/src/extension/display_settings/weston/weston_settings_Test.c b/display_framework/src/extension/display_settings/weston/weston_settings_Test.c
index 109b988..3b8261a 100644
--- a/display_framework/src/extension/display_settings/weston/weston_settings_Test.c
+++ b/display_framework/src/extension/display_settings/weston/weston_settings_Test.c
@@ -51,7 +51,8 @@
" 12->Dv Enable 13->active 14->vrr Enable 15->av mute 16->hdr mode 17->CvbsModesList 18-> mode support check"
"19->current aspect ratio 20->event test 21->frac rate policy 22->scaling 23->Supported dvmode"
" 24->hdr supportedlist 25->DvCap 26->display enabled 27->dpms status 28->mode support attrlist 29->framrate"
- " 30->primar plane fb size 31->physical size 32->Timing information 33->dv mode 34->rx supported hdcp version\n");
+ " 30->primar plane fb size 31->physical size 32->Timing information 33->dv mode 34->rx supported hdcp version "
+ " 35->cvbs video mute\n");
len = scanf("%d",&get);
if (get == 0 && len == 1) {
ENUM_DISPLAY_HDR_POLICY value = getDisplayHDRPolicy( DISPLAY_CONNECTOR_HDMIA);
@@ -313,6 +314,9 @@
printf("\n get_prop fail\n");
}
}
+ } else if (get == 36 && len == 1) {
+ int value = getDisplayCvbsAVMute( DISPLAY_CONNECTOR_CVBS );
+ printf("\n cvbs video mute:%d\n",value);
}
}
else {