hal: Add support for msm8953 and msm8937
- Add msm8953 and msm8937 target variant
sound card details
Change-Id: Ic3774c54d1fcdfc4125062c6cdf976262717bb12
diff --git a/hal/msm8916/platform.c b/hal/msm8916/platform.c
index e069918..31233ad 100644
--- a/hal/msm8916/platform.c
+++ b/hal/msm8916/platform.c
@@ -795,7 +795,15 @@
!strncmp(snd_card_name, "msm8976-tashalite-snd-card",
sizeof("msm8976-tashalite-snd-card")) ||
!strncmp(snd_card_name, "msm8976-tasha-skun-snd-card",
- sizeof("msm8976-tasha-skun-snd-card")))
+ sizeof("msm8976-tasha-skun-snd-card")) ||
+ !strncmp(snd_card_name, "msm8937-tasha-snd-card",
+ sizeof("msm8937-tasha-snd-card")) ||
+ !strncmp(snd_card_name, "msm8937-tashalite-snd-card",
+ sizeof("msm8937-tashalite-snd-card")) ||
+ !strncmp(snd_card_name, "msm8953-tasha-snd-card",
+ sizeof("msm8953-tasha-snd-card")) ||
+ !strncmp(snd_card_name, "msm8953-tashalite-snd-card",
+ sizeof("msm8953-tashalite-snd-card")))
{
ALOGI("%s: snd_card_name: %s",__func__,snd_card_name);
is_external_codec = true;
@@ -1012,6 +1020,49 @@
msm_device_to_be_id = msm_device_to_be_id_internal_codec;
msm_be_id_array_len =
sizeof(msm_device_to_be_id_internal_codec) / sizeof(msm_device_to_be_id_internal_codec[0]);
+
+ } else if (!strncmp(snd_card_name, "msm8937-snd-card-mtp",
+ sizeof("msm8937-snd-card-mtp"))) {
+ strlcpy(mixer_xml_path, MIXER_XML_PATH_MTP,
+ sizeof(MIXER_XML_PATH_MTP));
+ msm_device_to_be_id = msm_device_to_be_id_internal_codec;
+ msm_be_id_array_len =
+ sizeof(msm_device_to_be_id_internal_codec) / sizeof(msm_device_to_be_id_internal_codec[0]);
+ } else if (!strncmp(snd_card_name, "msm8937-tasha-snd-card",
+ sizeof("msm8937-tasha-snd-card"))) {
+ strlcpy(mixer_xml_path, MIXER_XML_PATH_WCD9335,
+ sizeof(MIXER_XML_PATH_WCD9335));
+ msm_device_to_be_id = msm_device_to_be_id_external_codec;
+ msm_be_id_array_len =
+ sizeof(msm_device_to_be_id_external_codec) / sizeof(msm_device_to_be_id_external_codec[0]);
+ } else if (!strncmp(snd_card_name, "msm8937-tashalite-snd-card",
+ sizeof("msm8937-tashalite-snd-card"))) {
+ strlcpy(mixer_xml_path, MIXER_XML_PATH_WCD9326,
+ MAX_MIXER_XML_PATH);
+ msm_device_to_be_id = msm_device_to_be_id_external_codec;
+ msm_be_id_array_len =
+ sizeof(msm_device_to_be_id_external_codec) / sizeof(msm_device_to_be_id_external_codec[0]);
+ } else if (!strncmp(snd_card_name, "msm8953-snd-card-mtp",
+ sizeof("msm8953-snd-card-mtp"))) {
+ strlcpy(mixer_xml_path, MIXER_XML_PATH_MTP,
+ sizeof(MIXER_XML_PATH_MTP));
+ msm_device_to_be_id = msm_device_to_be_id_internal_codec;
+ msm_be_id_array_len =
+ sizeof(msm_device_to_be_id_internal_codec) / sizeof(msm_device_to_be_id_internal_codec[0]);
+ } else if (!strncmp(snd_card_name, "msm8953-tasha-snd-card",
+ sizeof("msm8953-tasha-snd-card"))) {
+ strlcpy(mixer_xml_path, MIXER_XML_PATH_WCD9335,
+ sizeof(MIXER_XML_PATH_WCD9335));
+ msm_device_to_be_id = msm_device_to_be_id_external_codec;
+ msm_be_id_array_len =
+ sizeof(msm_device_to_be_id_external_codec) / sizeof(msm_device_to_be_id_external_codec[0]);
+ } else if (!strncmp(snd_card_name, "msm8953-tashalite-snd-card",
+ sizeof("msm8937-tashalite-snd-card"))) {
+ strlcpy(mixer_xml_path, MIXER_XML_PATH_WCD9326,
+ MAX_MIXER_XML_PATH);
+ msm_device_to_be_id = msm_device_to_be_id_external_codec;
+ msm_be_id_array_len =
+ sizeof(msm_device_to_be_id_external_codec) / sizeof(msm_device_to_be_id_external_codec[0]);
} else {
strlcpy(mixer_xml_path, MIXER_XML_PATH,
sizeof(MIXER_XML_PATH));
@@ -1425,11 +1476,29 @@
// ACDB module loads tasha ACDB files for tasha lite
if(!strncmp(snd_card_name, "msm8976-tashalite-snd-card",
sizeof("msm8976-tashalite-snd-card"))) {
- ALOGD("using tasha ACDB files for tasha-lite");
- return "msm8976-tasha-snd-card";
- } else {
- return snd_card_name;
- }
+ ALOGD("using tasha ACDB files for tasha-lite");
+ return "msm8976-tasha-snd-card";
+ }
+
+ if(!strncmp(snd_card_name, "msm8952-tashalite-snd-card",
+ sizeof("msm8952-tashalite-snd-card"))) {
+ ALOGD("using tasha ACDB files for tasha-lite");
+ return "msm8952-tasha-snd-card";
+ }
+
+ if(!strncmp(snd_card_name, "msm8937-tashalite-snd-card",
+ sizeof("msm8937-tashalite-snd-card"))) {
+ ALOGD("using tasha ACDB files for tasha-lite");
+ return "msm8937-tasha-snd-card";
+ }
+
+ if(!strncmp(snd_card_name, "msm8953-tashalite-snd-card",
+ sizeof("msm8953-tashalite-snd-card"))) {
+ ALOGD("using tasha ACDB files for tasha-lite");
+ return "msm8953-tasha-snd-card";
+ }
+
+ return snd_card_name;
}
@@ -3925,19 +3994,27 @@
{
if (!strncmp(snd_card_name, "msm8952-tomtom-snd-card",
- sizeof("msm8952-tomtom-snd-card")) ||
+ sizeof("msm8952-tomtom-snd-card")) ||
!strncmp(snd_card_name, "msm8952-tasha-snd-card",
- sizeof("msm8952-tasha-snd-card")) ||
+ sizeof("msm8952-tasha-snd-card")) ||
!strncmp(snd_card_name, "msm8952-tashalite-snd-card",
- sizeof("msm8952-tashalite-snd-card")) ||
+ sizeof("msm8952-tashalite-snd-card")) ||
!strncmp(snd_card_name, "msm8952-tasha-skun-snd-card",
- sizeof("msm8952-tasha-skun-snd-card")) ||
+ sizeof("msm8952-tasha-skun-snd-card")) ||
!strncmp(snd_card_name, "msm8976-tasha-snd-card",
- sizeof("msm8976-tasha-snd-card")) ||
+ sizeof("msm8976-tasha-snd-card")) ||
!strncmp(snd_card_name, "msm8976-tashalite-snd-card",
- sizeof("msm8976-tashalite-snd-card")) ||
+ sizeof("msm8976-tashalite-snd-card")) ||
!strncmp(snd_card_name, "msm8976-tasha-skun-snd-card",
- sizeof("msm8976-tasha-skun-snd-card")))
+ sizeof("msm8976-tasha-skun-snd-card")) ||
+ !strncmp(snd_card_name, "msm8937-tasha-snd-card",
+ sizeof("msm8937-tasha-snd-card")) ||
+ !strncmp(snd_card_name, "msm8937-tashalite-snd-card",
+ sizeof("msm8937-tashalite-snd-card")) ||
+ !strncmp(snd_card_name, "msm8953-tasha-snd-card",
+ sizeof("msm8953-tasha-snd-card")) ||
+ !strncmp(snd_card_name, "msm8953-tashalite-snd-card",
+ sizeof("msm8953-tashalite-snd-card")))
{
/* external codec, for rest/old of the external codecs
we dont support this funtionality(chaning AFE params)