meson_display: add API to get dolby vision mode [1/1]

PD#SWPL-159176

Problem:
add API to get dolby vision mode

Solution:
add API to get dolby vision mode

Verify:
AH212

Change-Id: I25d426e7a2d31082ebb673a07836c0368df9ed12
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 999d5d3..961e7b2 100644
--- a/display_framework/src/extension/display_settings/display_settings.h
+++ b/display_framework/src/extension/display_settings/display_settings.h
@@ -162,8 +162,9 @@
 int setDisplayEnabled(int enabled);
 int getDisplayScaling(int* value);
 int getDisplayEnabled(int* enabled);
-int setDisplayDVMode(int dvmode,DISPLAY_CONNECTOR_TYPE connType);
-int getDisplaySupportedDVMode(DISPLAY_CONNECTOR_TYPE connType);
+int setDisplayDvMode(int dvmode,DISPLAY_CONNECTOR_TYPE connType);
+int getDisplayDvMode(DISPLAY_CONNECTOR_TYPE connType );
+int getDisplaySupportedDvMode(DISPLAY_CONNECTOR_TYPE connType);
 uint32_t getDisplayHDRSupportList(DISPLAY_CONNECTOR_TYPE connType);
 uint32_t getDisplayDvCap(DISPLAY_CONNECTOR_TYPE connType);
 int getDisplaySupportAttrList(DisplayModeInfo* modeInfo,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 2d627ad..1a8fa7a 100644
--- a/display_framework/src/extension/display_settings/displayattribute/display_attribute.c
+++ b/display_framework/src/extension/display_settings/displayattribute/display_attribute.c
@@ -163,6 +163,7 @@
     return displayConnStatus;
 }
 
+/*Rx and Tx successful authentication after hdcp_version*/
 ENUM_DISPLAY_HDCP_VERSION getDisplayHdcpVersion(DISPLAY_CONNECTOR_TYPE connType ) {
     char* str = NULL;
     ENUM_DISPLAY_HDCP_VERSION displayHdcpVersion = DISPLAY_HDCP_RESERVED;
@@ -575,7 +576,7 @@
     return ret;
 }
 
-int getDisplaySupportedDVMode( DISPLAY_CONNECTOR_TYPE connType ) {
+int getDisplaySupportedDvMode( DISPLAY_CONNECTOR_TYPE connType ) {
     int fd = 0;
     fd = display_meson_get_open();
     int value = meson_drm_getDvCap(fd, connType );
@@ -675,7 +676,6 @@
 int getDisplayPlaneSize( int* width, int* height ) {
     int fd = 0;
     int ret = -1;
-    int rc = -1;
     if (width == NULL || height == NULL) {
         ERROR("%s %d Error: One or both pointers are NULL.\n",__FUNCTION__,__LINE__);
         return ret;
@@ -692,7 +692,6 @@
 int getDisplayPhysicalSize( int* width, int* height, DISPLAY_CONNECTOR_TYPE connType ) {
     int fd = 0;
     int ret = -1;
-    int rc = -1;
     if (width == NULL || height == NULL) {
         ERROR("%s %d Error: One or both pointers are NULL.\n",__FUNCTION__,__LINE__);
         return ret;
@@ -706,11 +705,22 @@
     return ret;
 }
 
+int getDisplayDvMode(DISPLAY_CONNECTOR_TYPE connType ) {
+    int fd = display_meson_get_open();
+    int ret = meson_drm_getDvMode(fd, connType );
+    if (ret == -1) {
+        ERROR("%s %d get dv mode fail", __FUNCTION__, __LINE__);
+    } else {
+        DEBUG("%s %d get dv mode value %d",__FUNCTION__,__LINE__,ret);
+    }
+    meson_close_drm(fd);
+    return ret;
+}
+
 int getDisplaySignalTimingInfo(uint16_t* htotal, uint16_t* vtotal, uint16_t* hstart,
                                              uint16_t* vstart, DISPLAY_CONNECTOR_TYPE connType) {
     int fd = 0;
     int ret = -1;
-    int rc = -1;
     if (htotal == NULL || vtotal == NULL || hstart == NULL || vstart == NULL) {
         ERROR("%s %d Error: have pointers are NULL.\n",__FUNCTION__,__LINE__);
         return ret;
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 cb5df09..265de37 100644
--- a/display_framework/src/extension/display_settings/meson/meson_settings.c
+++ b/display_framework/src/extension/display_settings/meson/meson_settings.c
@@ -738,7 +738,7 @@
     return ret;
 }
 
-int setDisplayDVMode(int dvmode,DISPLAY_CONNECTOR_TYPE connType) {
+int setDisplayDvMode(int dvmode,DISPLAY_CONNECTOR_TYPE connType) {
     int res = -1;
     int ret = -1;
     int fd = 0;
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 7c34979..697519b 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
@@ -240,10 +240,10 @@
             printf("dvmode: \n");
             int dvmode = -1;
             scanf("%d", &dvmode);
-            if (setDisplayDVMode(dvmode,DISPLAY_CONNECTOR_HDMIA) == 0) {
-                printf("\n setDisplayDVMode Success\n");
+            if (setDisplayDvMode(dvmode,DISPLAY_CONNECTOR_HDMIA) == 0) {
+                printf("\n setDisplayDvMode Success\n");
             }else{
-                printf("setDisplayDVMode Fail\n");
+                printf("setDisplayDvMode Fail\n");
             }
         }
     }
@@ -253,7 +253,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\n");
+         " 29->physical size 30->Timing information 31->dv mode \n");
         len = scanf("%d",&get);
         if (get == 0 && len == 1) {
             ENUM_DISPLAY_HDR_POLICY value = getDisplayHDRPolicy( DISPLAY_CONNECTOR_HDMIA);
@@ -267,6 +267,7 @@
                 printf("\n getDisplayModeFail\n");
             }
         } else if(get == 2 && len == 1) {
+            /*Rx and Tx successful authentication after get hdcp_version*/
             ENUM_DISPLAY_HDCP_VERSION value = getDisplayHdcpVersion( DISPLAY_CONNECTOR_HDMIA);
             printf("\n DISPLAY_HDCP_14      = 0\n"
                      " DISPLAY_HDCP_22      = 1\n value:%d \n", value);
@@ -417,8 +418,8 @@
                 printf("\n FracRate: %d\n",value);
             }
         } else if (get == 22 && len == 1) {
-            int value = getDisplaySupportedDVMode(DISPLAY_CONNECTOR_HDMIA);
-            printf("getDisplaySupportedDVMode %d\n",value);
+            int value = getDisplaySupportedDvMode(DISPLAY_CONNECTOR_HDMIA);
+            printf("getDisplaySupportedDvMode %d\n",value);
         } else if (get == 23 && len == 1) {
             uint32_t value = getDisplayHDRSupportList(DISPLAY_CONNECTOR_HDMIA);
             printf("\n value %d\n",value);
@@ -488,6 +489,13 @@
             } else {
                 printf("\n getDisplaySignalTimingInfo fail\n");
             }
+        } else if (get == 31 && len == 1) {
+            int value = getDisplayDvMode( DISPLAY_CONNECTOR_HDMIA );
+            if (value == -1) {
+                printf("\n get dv mode fail\n");
+            } else  {
+                printf("\n get dv mode value: %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 0743656..df5f6e4 100644
--- a/display_framework/src/extension/display_settings/westeros/westeros_settings.c
+++ b/display_framework/src/extension/display_settings/westeros/westeros_settings.c
@@ -539,7 +539,7 @@
     return ret;
 }
 
-int setDisplayDVMode(int dvmode,DISPLAY_CONNECTOR_TYPE connType) {
+int setDisplayDvMode(int dvmode,DISPLAY_CONNECTOR_TYPE connType) {
     int ret = -1;
     int crtcId = -1;
     char resp[OUTPUT_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 d2b72d1..760e20a 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
@@ -217,10 +217,10 @@
             printf("dvmode: \n");
             int dvmode = -1;
             scanf("%d", &dvmode);
-            if (setDisplayDVMode(dvmode,DISPLAY_CONNECTOR_HDMIA) == 0) {
-                printf("\n setDisplayDVMode Success\n");
+            if (setDisplayDvMode(dvmode,DISPLAY_CONNECTOR_HDMIA) == 0) {
+                printf("\n setDisplayDvMode Success\n");
             }else{
-                printf("setDisplayDVMode Fail\n");
+                printf("setDisplayDvMode Fail\n");
             }
         }
     }
@@ -230,7 +230,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->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\n");
+         " 30->primar plane fb size 31->physical size 32->Timing information 33->is bestmode 34->dv mode\n");
         len = scanf("%d",&get);
         if (get == 0 && len == 1) {
             ENUM_DISPLAY_HDR_POLICY value = getDisplayHDRPolicy( DISPLAY_CONNECTOR_HDMIA);
@@ -404,8 +404,8 @@
                printf("\n get the scaling of graphic %d\n",value);
             }
         } else if (get == 23 && len == 1) {
-            int value = getDisplaySupportedDVMode(DISPLAY_CONNECTOR_HDMIA);
-            printf("getDisplaySupportedDVMode %d\n",value);
+            int value = getDisplaySupportedDvMode(DISPLAY_CONNECTOR_HDMIA);
+            printf("getDisplaySupportedDvMode %d\n",value);
         } else if (get == 24 && len == 1) {
             uint32_t value  = getDisplayHDRSupportList(DISPLAY_CONNECTOR_HDMIA);
             printf("\n value %d\n",value);
@@ -489,6 +489,13 @@
             } else {
                printf("\n get best mode status value %d \n",value);
             }
+        }  else if (get == 34 && len == 1) {
+            int value = getDisplayDvMode( DISPLAY_CONNECTOR_HDMIA );
+            if (value == -1) {
+                printf("\n get dv mode fail\n");
+            } else  {
+                printf("\n get dv mode value: %d\n",value);
+            }
         }
     }
     else {
diff --git a/display_framework/src/extension/display_settings/weston/weston_settings.c b/display_framework/src/extension/display_settings/weston/weston_settings.c
index 639cfdb..8944c45 100644
--- a/display_framework/src/extension/display_settings/weston/weston_settings.c
+++ b/display_framework/src/extension/display_settings/weston/weston_settings.c
@@ -87,7 +87,7 @@
     return 0;
 }
 
-int setDisplayDVMode(int dvmode,DISPLAY_CONNECTOR_TYPE connType) {
+int setDisplayDvMode(int dvmode,DISPLAY_CONNECTOR_TYPE connType) {
     return 0;
 }
 
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 a3895a4..5c1b469 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,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->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\n");
+         " 30->primar plane fb size 31->physical size 32->Timing information 33->dv mode\n");
         len = scanf("%d",&get);
         if (get == 0 && len == 1) {
             ENUM_DISPLAY_HDR_POLICY value = getDisplayHDRPolicy( DISPLAY_CONNECTOR_HDMIA);
@@ -216,8 +216,8 @@
         } else if (get == 22 && len == 1) {
             printf("The current weston set API is not developed\n");
         } else if (get == 23 && len == 1) {
-            int value = getDisplaySupportedDVMode(DISPLAY_CONNECTOR_HDMIA);
-            printf("getDisplaySupportedDVMode %d\n",value);
+            int value = getDisplaySupportedDvMode(DISPLAY_CONNECTOR_HDMIA);
+            printf("getDisplaySupportedDvMode %d\n",value);
         } else if (get == 24 && len == 1) {
             uint32_t value  = getDisplayHDRSupportList(DISPLAY_CONNECTOR_HDMIA);
             printf("\n value %d\n",value);
@@ -288,6 +288,13 @@
             } else {
                 printf("\n getDisplaySignalTimingInfo fail\n");
             }
+        } else if (get == 33 && len == 1) {
+            int value = getDisplayDvMode( DISPLAY_CONNECTOR_HDMIA );
+            if (value == -1) {
+                printf("\n get dv mode fail\n");
+            } else  {
+                printf("\n get dv mode value: %d\n",value);
+            }
         }
     }
     else {