hal: Add support for Tasha I2S sound card
Add support for the Tasha I2S sound card to enable CSD HAL
functionality on SDX20.
CRs-Fixed: 2019963
Change-Id: I9d89631d32c9fc1a549665fb311f8adefd758ec9
diff --git a/hal/msm8916/hw_info.c b/hal/msm8916/hw_info.c
index 5060c77..652afab 100644
--- a/hal/msm8916/hw_info.c
+++ b/hal/msm8916/hw_info.c
@@ -170,6 +170,8 @@
strlcpy(hw_info->name, "apq8009", sizeof(hw_info->name));
} else if (!strcmp(snd_card_name, "mdm9607-tomtom-i2s-snd-card")) {
strlcpy(hw_info->name, "mdm9607", sizeof(hw_info->name));
+ } else if (!strcmp(snd_card_name, "mdm-tasha-i2s-snd-card")) {
+ strlcpy(hw_info->name, "mdm-tasha", sizeof(hw_info->name));
} else if (!strcmp(snd_card_name, "msm8909-skuq-snd-card")) {
strlcpy(hw_info->type, "skuq", sizeof(hw_info->type));
strlcpy(hw_info->name, "msm8909", sizeof(hw_info->name));
@@ -202,7 +204,7 @@
strstr(snd_card_name, "msm8937") || strstr(snd_card_name, "msm8917") ||
strstr(snd_card_name, "msm8940") || strstr(snd_card_name, "msm8920") ||
strstr(snd_card_name, "sdm660") || strstr(snd_card_name, "apq8009") ||
- strstr(snd_card_name, "mdm9607")) {
+ strstr(snd_card_name, "mdm9607") || strstr(snd_card_name, "mdm-tasha")) {
ALOGV("8x16 - variant soundcard");
update_hardware_info_8x16(hw_info, snd_card_name);
} else {
diff --git a/hal/msm8916/platform.c b/hal/msm8916/platform.c
index 88a2ef0..4a2ebb9 100644
--- a/hal/msm8916/platform.c
+++ b/hal/msm8916/platform.c
@@ -76,6 +76,7 @@
#define PLATFORM_INFO_XML_PATH "/etc/audio_platform_info.xml"
#define MIXER_XML_PATH_WCD9326_I2S "/etc/mixer_paths_wcd9326_i2s.xml"
#define MIXER_XML_PATH_WCD9330_I2S "/etc/mixer_paths_wcd9330_i2s.xml"
+#define MIXER_XML_PATH_WCD9335_I2S "/etc/mixer_paths_wcd9335_i2s.xml"
#define MIXER_XML_PATH_SBC "/etc/mixer_paths_sbc.xml"
#else
#define MIXER_XML_PATH "/system/etc/mixer_paths.xml"
@@ -88,8 +89,9 @@
#define MIXER_XML_PATH_WCD9335 "/system/etc/mixer_paths_wcd9335.xml"
#define MIXER_XML_PATH_SKUN "/system/etc/mixer_paths_qrd_skun.xml"
#define PLATFORM_INFO_XML_PATH "/system/etc/audio_platform_info.xml"
-#define MIXER_XML_PATH_WCD9326_I2S "/system/etc/mixer_paths_wcd9326_i2s.xml"
+#define MIXER_XML_PATH_WCD9326_I2S "/system/etc/mixer_paths_wcd9326_i2s.xml"
#define MIXER_XML_PATH_WCD9330_I2S "/system/etc/mixer_paths_wcd9330_i2s.xml"
+#define MIXER_XML_PATH_WCD9335_I2S "/system/etc/mixer_paths_wcd9335_i2s.xml"
#define MIXER_XML_PATH_SBC "/system/etc/mixer_paths_sbc.xml"
#endif
#define MIXER_XML_PATH_SKUN "/system/etc/mixer_paths_qrd_skun.xml"
@@ -946,6 +948,8 @@
sizeof("apq8009-tashalite-snd-card")) ||
!strncmp(snd_card_name, "mdm9607-tomtom-i2s-snd-card",
sizeof("mdm9607-tomtom-i2s-snd-card")) ||
+ !strncmp(snd_card_name, "mdm-tasha-i2s-snd-card",
+ sizeof("mdm-tasha-i2s-snd-card")) ||
!strncmp(snd_card_name, "sdm660-tashalite-snd-card",
sizeof("sdm660-tashalite-snd-card")) ||
!strncmp(snd_card_name, "sdm660-tasha-skus-snd-card",
@@ -1324,6 +1328,13 @@
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, "mdm-tasha-i2s-snd-card",
+ sizeof("mdm-tasha-i2s-snd-card"))) {
+ strlcpy(mixer_xml_path, MIXER_XML_PATH_WCD9335_I2S,
+ sizeof(MIXER_XML_PATH_WCD9335_I2S));
+ 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));