audio: zapper 4k volume control fails [1/1]

PD#OTT-64556

Problem:
Setting kctrl does not match

Solution:
Set the correct kctrl

Verify:
zapper 4k

Change-Id: I9f7a7506b846d18e5934d3326920554c347e390d
Signed-off-by: haiyang.ren <haiyang.ren@amlogic.com>
diff --git a/src/AML_Audio_Setting.cpp b/src/AML_Audio_Setting.cpp
index 2f0221e..3b846b7 100644
--- a/src/AML_Audio_Setting.cpp
+++ b/src/AML_Audio_Setting.cpp
@@ -37,28 +37,32 @@
 #ifndef SNDRV_CTL_ELEM_ID_NAME_MAXLEN
 #define SNDRV_CTL_ELEM_ID_NAME_MAXLEN 44
 #endif
-#define DEFAULT_AML_SOUND_CARD 0
+#define DEFAULT_AML_SOUND_CARD      0
 /* TLV header size*/
-#define TLV_HEADER_SIZE (2 * sizeof(unsigned int))
+#define TLV_HEADER_SIZE             (2 * sizeof(unsigned int))
 
-#define TDMB_GAIN "TDMOUT_B Software Gain"
-#define TDMA_GAIN "TDMOUT_A Software Gain"
-#define AML_CHIP_ID "AML chip id"
-#define AML_CHIP_ID_S1A 69
-#define HDMI_OUT_MUTE "Audio hdmi-out mute"
-#define DAC_DIGITAL_VOLUME "DAC Digital Playback Volume"
-#define DIGITAL_MODE "Audio Digital Mode"
-#define DRC_CONTROL "Audio DRC Control"
-#define HDMI_CON "Audio Output Select"
-#define SPDIF_FORMAT "Audio spdif format"
+#define TDMC_GAIN                   "TDMOUT_C Software Gain"
+#define TDMB_GAIN                   "TDMOUT_B Software Gain"
+#define TDMA_GAIN                   "TDMOUT_A Software Gain"
+#define AML_CHIP_ID                 "AML chip id"
+#define AML_CHIP_ID_S1A             69
+#define AML_CHIP_ID_S4D             58
+
+#define HDMI_OUT_MUTE               "Audio hdmi-out mute"
+#define DAC_DIGITAL_VOLUME          "DAC Digital Playback Volume"
+#define DIGITAL_MODE                "Audio Digital Mode"
+#define DRC_CONTROL                 "Audio DRC Control"
+#define HDMI_CON                    "Audio Output Select"
+#define SPDIF_FORMAT                "Audio spdif format"
+
 #define DAC_DIGITAl_DEFAULT_VOLUME          (251)
-#define HEADPHONE_DAC_CHANNEL_NUM    (2)
+#define HEADPHONE_DAC_CHANNEL_NUM           (2)
 
-#define DRC_MODE_LINE 2
-#define DRC_MODE_RF 3
-#define DRC_MODE_BIT  0
-#define DRC_HIGH_CUT_BIT 3
-#define DRC_LOW_BST_BIT 16
+#define DRC_MODE_LINE               2
+#define DRC_MODE_RF                 3
+#define DRC_MODE_BIT                0
+#define DRC_HIGH_CUT_BIT            3
+#define DRC_LOW_BST_BIT             16
 
 extern "C" {
 
@@ -740,7 +744,7 @@
     pthread_mutex_lock(&g_volume_lock);
     chip_id = aml_audio_mixer_int(AML_CHIP_ID, 0, false);
     /*s1a use this way to set hdmi status*/
-    if (AML_CHIP_ID_S1A == chip_id) {
+    if (AML_CHIP_ID_S1A == chip_id || AML_CHIP_ID_S4D == chip_id) {
         ret = aml_audio_mixer_int(HDMI_CON, isconnect, true);
         ALOGD("[%s:%d] isconnect: %d, ret: %d", __func__, __LINE__, isconnect, ret);
     }
@@ -759,11 +763,13 @@
     pthread_mutex_lock(&g_volume_lock);
     chip_id = aml_audio_mixer_int(AML_CHIP_ID, 0, false);
     /*s1a use TDM-A as cvbs/hdmi_tx samesource*/
-    if (AML_CHIP_ID_S1A == chip_id)
+    if (AML_CHIP_ID_S1A == chip_id) {
         ret = aml_audio_mixer_int(TDMA_GAIN, value, true);
-    else
+    } else if (AML_CHIP_ID_S4D == chip_id) {
+        ret = aml_audio_mixer_int(TDMC_GAIN, value, true);
+    } else {
         ret = aml_audio_mixer_int(TDMB_GAIN, value, true);
-
+    }
     ALOGD("[%s:%d] chip_id: %d, volume: %d, ret: %d", __func__, __LINE__, chip_id, value, ret);
     pthread_mutex_unlock(&g_volume_lock);
 
@@ -775,10 +781,13 @@
     pthread_mutex_lock(&g_volume_lock);
     int ret = 0;
     chip_id = aml_audio_mixer_int(AML_CHIP_ID, 0, false);
-    if (AML_CHIP_ID_S1A == chip_id)
+    if (AML_CHIP_ID_S1A == chip_id) {
         ret = aml_audio_mixer_int(TDMA_GAIN, 0, false);
-    else
+    } else if (AML_CHIP_ID_S4D == chip_id) {
+        ret = aml_audio_mixer_int(TDMC_GAIN, 0, false);
+    } else {
         ret = aml_audio_mixer_int(TDMB_GAIN, 0, false);
+    }
     ALOGD("[%s:%d] chip_id: %d, volume: %d", __func__, __LINE__, chip_id, ret);
     pthread_mutex_unlock(&g_volume_lock);