hal: use proper snd_card_name for acdb_init

Use tasha snd card name for tasha lite variants as
well for acdb_init to load the same set of ACDB
files for both the variants.

CRs-Fixed: 2173200
Change-Id: I870986b11c8e6d2937705970e10af0038e008f1e
diff --git a/hal/acdb.c b/hal/acdb.c
index 182e513..ad67d61 100644
--- a/hal/acdb.c
+++ b/hal/acdb.c
@@ -34,7 +34,7 @@
     int result = -1;
     char *cvd_version = NULL;
 
-    char *snd_card_name = NULL;
+    const char *snd_card_name = NULL;
     struct mixer *mixer = NULL;
     struct acdb_platform_data *my_data = NULL;
 
@@ -115,13 +115,14 @@
     }
 
     /* Get Sound card name */
-    snd_card_name = strdup(mixer_get_name(mixer));
+    snd_card_name = mixer_get_name(mixer);
     if (!snd_card_name) {
         ALOGE("failed to allocate memory for snd_card_name");
         result = -1;
         goto cleanup;
     }
 
+    snd_card_name = platform_get_snd_card_name_for_acdb_loader(snd_card_name);
     int key = 0;
     struct listnode *node = NULL;
     struct meta_key_list *key_info = NULL;
@@ -160,9 +161,6 @@
     if (cvd_version)
         free(cvd_version);
 
-    if (snd_card_name)
-        free(snd_card_name);
-
     return result;
 }
 
diff --git a/hal/msm8916/platform.c b/hal/msm8916/platform.c
index ef23b15..c6b0bc8 100644
--- a/hal/msm8916/platform.c
+++ b/hal/msm8916/platform.c
@@ -1851,7 +1851,7 @@
     plat_data->hw_dep_fd = fd;
 }
 
-const char * get_snd_card_name_for_acdb_loader(const char *snd_card_name) {
+const char * platform_get_snd_card_name_for_acdb_loader(const char *snd_card_name) {
 
     if(snd_card_name == NULL)
         return NULL;
@@ -1905,7 +1905,7 @@
 {
     struct platform_data *my_data = (struct platform_data *)platform;
     char *cvd_version = NULL;
-    const char *snd_card_name, *acdb_snd_card_name;
+    const char *snd_card_name;
     int result = -1;
     struct listnode *node;
     struct meta_key_list *key_info;
@@ -1920,21 +1920,21 @@
     }
 
     snd_card_name = mixer_get_name(my_data->adev->mixer);
-    acdb_snd_card_name = get_snd_card_name_for_acdb_loader(snd_card_name);
+    snd_card_name = platform_get_snd_card_name_for_acdb_loader(snd_card_name);
 
     if (my_data->acdb_init_v3) {
-        result = my_data->acdb_init_v3(acdb_snd_card_name, cvd_version,
+        result = my_data->acdb_init_v3(snd_card_name, cvd_version,
                                            &my_data->acdb_meta_key_list);
     } else if (my_data->acdb_init) {
         node = list_head(&my_data->acdb_meta_key_list);
         key_info = node_to_item(node, struct meta_key_list, list);
         key = key_info->cal_info.nKey;
-        result = my_data->acdb_init(acdb_snd_card_name, cvd_version, key);
+        result = my_data->acdb_init(snd_card_name, cvd_version, key);
     }
     /* Save these variables in platform_data. These will be used
        while reloading ACDB files during run time. */
     strlcpy(my_data->cvd_version, cvd_version, MAX_CVD_VERSION_STRING_SIZE);
-    strlcpy(my_data->snd_card_name, acdb_snd_card_name,
+    strlcpy(my_data->snd_card_name, snd_card_name,
                                                MAX_SND_CARD_STRING_SIZE);
 
     if (cvd_version)
diff --git a/hal/msm8974/platform.c b/hal/msm8974/platform.c
index b41784e..7bea5f1 100644
--- a/hal/msm8974/platform.c
+++ b/hal/msm8974/platform.c
@@ -1730,7 +1730,7 @@
     plat_data->hw_dep_fd = fd;
 }
 
-const char * get_snd_card_name_for_acdb_loader(const char *snd_card_name) {
+const char * platform_get_snd_card_name_for_acdb_loader(const char *snd_card_name) {
 
     if(snd_card_name == NULL)
         return NULL;
@@ -1767,7 +1767,7 @@
     }
 
     snd_card_name = mixer_get_name(my_data->adev->mixer);
-    snd_card_name = get_snd_card_name_for_acdb_loader(snd_card_name);
+    snd_card_name = platform_get_snd_card_name_for_acdb_loader(snd_card_name);
 
     if (my_data->acdb_init_v3) {
         result = my_data->acdb_init_v3(snd_card_name, cvd_version,
diff --git a/hal/platform_api.h b/hal/platform_api.h
index e72c6e9..0fec452 100644
--- a/hal/platform_api.h
+++ b/hal/platform_api.h
@@ -260,4 +260,5 @@
 int platform_get_mmap_data_fd(void *platform, int dev, int dir,
                                int *fd, uint32_t *size);
 int platform_get_ec_ref_loopback_snd_device(int channel_count);
+const char * platform_get_snd_card_name_for_acdb_loader(const char *snd_card_name);
 #endif // AUDIO_PLATFORM_API_H