diff --git a/hal/msm8974/hw_info.c b/hal/msm8974/hw_info.c
index 966011d..bf919c4 100644
--- a/hal/msm8974/hw_info.c
+++ b/hal/msm8974/hw_info.c
@@ -619,6 +619,13 @@
                  sizeof("lahaina-shimaqrd-snd-card"))) {
         strlcpy(hw_info->name, "shima", sizeof(hw_info->name));
         hw_info->is_stereo_spkr = false;
+    } else if (!strncmp(snd_card_name, "lahaina-yupikidp-snd-card",
+                 sizeof("lahaina-yupikidp-snd-card"))) {
+        strlcpy(hw_info->name, "yupik", sizeof(hw_info->name));
+    } else if (!strncmp(snd_card_name, "lahaina-yupikqrd-snd-card",
+                 sizeof("lahaina-yupikqrd-snd-card"))) {
+        strlcpy(hw_info->name, "yupik", sizeof(hw_info->name));
+        hw_info->is_stereo_spkr = false;
     } else {
         ALOGW("%s: Not a lahaina device", __func__);
     }
@@ -951,7 +958,8 @@
                || 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, "lahaina") || strstr(snd_card_name, "shima")) {
+    } else if(strstr(snd_card_name, "lahaina") || strstr(snd_card_name, "shima")
+      || strstr(snd_card_name, "yupik")) {
         ALOGV("LAHAINA - variant soundcard");
         update_hardware_info_lahaina(hw_info, snd_card_name);
     } else if(strstr(snd_card_name, "holi")) {
diff --git a/hal/msm8974/platform.c b/hal/msm8974/platform.c
index 3bffe9b..064a9d7 100755
--- a/hal/msm8974/platform.c
+++ b/hal/msm8974/platform.c
@@ -74,6 +74,8 @@
 #define PLATFORM_INFO_XML_PATH_TDM_NAME  "audio_platform_info_tdm.xml"
 #define PLATFORM_INFO_XML_PATH_SHIMA_IDP "audio_platform_info_shimaidp.xml"
 #define PLATFORM_INFO_XML_PATH_SHIMA_QRD "audio_platform_info_shimaqrd.xml"
+#define PLATFORM_INFO_XML_PATH_YUPIK_IDP "audio_platform_info_yupikidp.xml"
+#define PLATFORM_INFO_XML_PATH_YUPIK_QRD "audio_platform_info_yupikqrd.xml"
 #define PLATFORM_INFO_XML_PATH_SCUBA_IDP "audio_platform_info_scubaidp.xml"
 #define PLATFORM_INFO_XML_PATH_SCUBA_QRD "audio_platform_info_scubaqrd.xml"
 
@@ -1815,6 +1817,10 @@
                    sizeof("lahaina-shimaidps-snd-card")) ||
          !strncmp(snd_card_name, "lahaina-shimaqrd-snd-card",
                    sizeof("lahaina-shimaqrd-snd-card")) ||
+         !strncmp(snd_card_name, "lahaina-yupikidp-snd-card",
+                   sizeof("lahaina-yupikidp-snd-card")) ||
+         !strncmp(snd_card_name, "lahaina-yupikqrd-snd-card",
+                   sizeof("lahaina-yupikqrd-snd-card")) ||
          !strncmp(snd_card_name, "kona-qrd-snd-card",
                    sizeof("kona-qrd-snd-card")) ||
          !strncmp(snd_card_name, "lito-mtp-snd-card",
@@ -3483,6 +3489,14 @@
                sizeof("lahaina-shimaqrd-snd-card"))) {
         platform_info_init(get_xml_file_path(PLATFORM_INFO_XML_PATH_SHIMA_QRD),
             my_data, PLATFORM);
+    } else if (!strncmp(snd_card_name, "lahaina-yupikidp-snd-card",
+               sizeof("lahaina-yupikidp-snd-card"))) {
+        platform_info_init(get_xml_file_path(PLATFORM_INFO_XML_PATH_YUPIK_IDP),
+            my_data, PLATFORM);
+    } else if (!strncmp(snd_card_name, "lahaina-yupikqrd-snd-card",
+               sizeof("lahaina-yupikqrd-snd-card"))) {
+        platform_info_init(get_xml_file_path(PLATFORM_INFO_XML_PATH_YUPIK_QRD),
+            my_data, PLATFORM);
     } else if (!strncmp(snd_card_name, "bengal-scubaidp-snd-card",
                sizeof("bengal-scubaidp-snd-card"))) {
         platform_info_init(get_xml_file_path(PLATFORM_INFO_XML_PATH_SCUBA_IDP),
@@ -3820,6 +3834,7 @@
         if (!strncmp(snd_card_name, "sm6150", strlen("sm6150")) ||
             !strncmp(snd_card_name, "kona", strlen("kona")) ||
             !strncmp(snd_card_name, "shima", strlen("shima")) ||
+            !strncmp(snd_card_name, "yupik", strlen("yupik")) ||
             !strncmp(snd_card_name, "lahaina", strlen("lahaina")) ||
             !strncmp(snd_card_name, "lito", strlen("lito")) ||
             !strncmp(snd_card_name, "atoll", strlen("atoll")) ||
