hal: bengal bringup changes to add sound card

Add support for bengal sound card in HAL.

Change-Id: I5d639b38851ed024704e9560f44fb5534a3d0c6b
diff --git a/hal/audio_extn/sndmonitor.c b/hal/audio_extn/sndmonitor.c
index 7b3e0a0..4f27db9 100644
--- a/hal/audio_extn/sndmonitor.c
+++ b/hal/audio_extn/sndmonitor.c
@@ -225,6 +225,7 @@
             (strncasecmp(card_id, "sa", 2) != 0) &&
             (strncasecmp(card_id, "kona", 4) != 0) &&
             (strncasecmp(card_id, "atoll", 5) != 0) &&
+            (strncasecmp(card_id, "bengal", 6) != 0) &&
             (strncasecmp(card_id, "lito", 4) != 0)) {
             ALOGW("Skip over non-ADSP snd card %s", card_id);
             continue;
diff --git a/hal/msm8974/hw_info.c b/hal/msm8974/hw_info.c
index fbdb262..bcc5a58 100644
--- a/hal/msm8974/hw_info.c
+++ b/hal/msm8974/hw_info.c
@@ -520,7 +520,11 @@
           struct hardware_info *hw_info,
           const char *snd_card_name)
 {
-    if (!strncmp(snd_card_name, "kona-mtp-snd-card",
+    if (!strncmp(snd_card_name, "bengal-idp-snd-card",
+                 sizeof("bengal-idp-snd-card"))) {
+        strlcpy(hw_info->name, "bengal", sizeof(hw_info->name));
+        hw_info->is_stereo_spkr = false;
+    } else if (!strncmp(snd_card_name, "kona-mtp-snd-card",
                  sizeof("kona-mtp-snd-card"))) {
         strlcpy(hw_info->name, "kona", sizeof(hw_info->name));
     } else if (!strncmp(snd_card_name, "lito-mtp-snd-card",
@@ -822,7 +826,7 @@
         ALOGV("SDA845 - variant soundcard");
         update_hardware_info_sda845(hw_info, snd_card_name);
     } else if (strstr(snd_card_name, "kona") || strstr(snd_card_name, "lito")
-               || strstr(snd_card_name, "atoll")) {
+               || strstr(snd_card_name, "atoll") || strstr(snd_card_name, "bengal")) {
         ALOGV("KONA - variant soundcard");
         update_hardware_info_kona(hw_info, snd_card_name);
     } else if(strstr(snd_card_name, "sdm439")) {
diff --git a/hal/msm8974/platform.c b/hal/msm8974/platform.c
index 264c6f6..4805f21 100644
--- a/hal/msm8974/platform.c
+++ b/hal/msm8974/platform.c
@@ -1702,7 +1702,9 @@
          !strncmp(snd_card_name, "atoll-idp-snd-card",
                    sizeof("atoll-idp-snd-card")) ||
          !strncmp(snd_card_name, "atoll-qrd-snd-card",
-                   sizeof("atoll-qrd-snd-card"))) {
+                   sizeof("atoll-qrd-snd-card")) ||
+         !strncmp(snd_card_name, "bengal-idp-snd-card",
+                   sizeof("bengal-idp-snd-card"))) {
          ALOGI("%s: snd_card_name: %s",__func__,snd_card_name);
          my_data->is_internal_codec = true;
          my_data->is_slimbus_interface = false;
@@ -3525,7 +3527,8 @@
             !strncmp(snd_card_name, "kona", strlen("kona")) ||
             !strncmp(snd_card_name, "lito", strlen("lito")) ||
             !strncmp(snd_card_name, "atoll", strlen("atoll")) ||
-            !strncmp(snd_card_name, "trinket", strlen("trinket"))) {
+            !strncmp(snd_card_name, "trinket", strlen("trinket"))||
+            !strncmp(snd_card_name, "bengal", strlen("bengal"))) {
             my_data->current_backend_cfg[DEFAULT_CODEC_BACKEND].bitwidth_mixer_ctl =
                 strdup("WSA_CDC_DMA_RX_0 Format");
             my_data->current_backend_cfg[DEFAULT_CODEC_BACKEND].samplerate_mixer_ctl =
@@ -3553,6 +3556,13 @@
             if (default_rx_backend)
                 free(default_rx_backend);
             default_rx_backend = strdup("WSA_CDC_DMA_RX_0");
+            if(!strncmp(snd_card_name, "bengal", strlen("bengal"))) {
+                my_data->current_backend_cfg[DEFAULT_CODEC_BACKEND].bitwidth_mixer_ctl =
+                        strdup("RX_CDC_DMA_RX_1 Format");
+                my_data->current_backend_cfg[DEFAULT_CODEC_BACKEND].samplerate_mixer_ctl =
+                        strdup("RX_CDC_DMA_RX_1 SampleRate");
+                default_rx_backend = strdup("RX_CDC_DMA_RX_1");
+            }
         } else if (!strncmp(snd_card_name, "sdm660", strlen("sdm660")) ||
                !strncmp(snd_card_name, "sdm670", strlen("sdm670")) ||
                !strncmp(snd_card_name, "qcs605", strlen("qcs605"))) {