hal: config: add support for auto sa8295 soundcard
Add soundcard support for auto sa8295 target.
Change-Id: I700a962be38d596de1bfd9515e1d3153461cb1e0
Signed-off-by: Deru Wang <deruwang@codeaurora.org>
diff --git a/hal/msm8974/platform.c b/hal/msm8974/platform.c
index 43af0d2..48462c6 100755
--- a/hal/msm8974/platform.c
+++ b/hal/msm8974/platform.c
@@ -78,6 +78,7 @@
#define PLATFORM_INFO_XML_PATH_YUPIK_IDP "audio_platform_info_yupikidp.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"
+#define PLATFORM_INFO_XML_PATH_SA8295_ADP "audio_platform_info_sa8295.xml"
#include <linux/msm_audio.h>
#if defined (PLATFORM_MSM8998) || (PLATFORM_SDM845) || (PLATFORM_SDM710) || \
@@ -3534,6 +3535,10 @@
sizeof("bengal-scubaqrd-snd-card"))) {
platform_info_init(get_xml_file_path(PLATFORM_INFO_XML_PATH_SCUBA_QRD),
my_data, PLATFORM);
+ } else if (!strncmp(snd_card_name, "sa8295-adp-star-snd-card",
+ sizeof("sa8295-adp-star-snd-card"))) {
+ platform_info_init(get_xml_file_path(PLATFORM_INFO_XML_PATH_SA8295_ADP),
+ my_data, PLATFORM);
} else if (my_data->is_internal_codec && (strstr(snd_card_name, "sdm429w") == NULL)) {
platform_info_init(get_xml_file_path(PLATFORM_INFO_XML_PATH_INTCODEC_NAME),
my_data, PLATFORM);
@@ -3570,18 +3575,25 @@
snd_split_handle->form_factor);
if (!audio_extn_utils_resolve_config_file(mixer_xml_file)) {
memset(mixer_xml_file, 0, sizeof(mixer_xml_file));
- snprintf(mixer_xml_file, sizeof(mixer_xml_file), "%s_%s.xml",
- MIXER_XML_BASE_STRING, snd_split_handle->variant);
+ snprintf(mixer_xml_file, sizeof(mixer_xml_file), "%s_%s_%s.xml",
+ MIXER_XML_BASE_STRING, snd_split_handle->device,
+ snd_split_handle->snd_card);
if (!audio_extn_utils_resolve_config_file(mixer_xml_file)) {
memset(mixer_xml_file, 0, sizeof(mixer_xml_file));
snprintf(mixer_xml_file, sizeof(mixer_xml_file), "%s_%s.xml",
- MIXER_XML_BASE_STRING, snd_split_handle->snd_card);
+ MIXER_XML_BASE_STRING, snd_split_handle->variant);
if (!audio_extn_utils_resolve_config_file(mixer_xml_file)) {
memset(mixer_xml_file, 0, sizeof(mixer_xml_file));
- strlcpy(mixer_xml_file, MIXER_XML_DEFAULT_PATH, MIXER_PATH_MAX_LENGTH);
- audio_extn_utils_resolve_config_file(mixer_xml_file);
+ snprintf(mixer_xml_file, sizeof(mixer_xml_file), "%s_%s.xml",
+ MIXER_XML_BASE_STRING, snd_split_handle->snd_card);
+
+ if (!audio_extn_utils_resolve_config_file(mixer_xml_file)) {
+ memset(mixer_xml_file, 0, sizeof(mixer_xml_file));
+ strlcpy(mixer_xml_file, MIXER_XML_DEFAULT_PATH, MIXER_PATH_MAX_LENGTH);
+ audio_extn_utils_resolve_config_file(mixer_xml_file);
+ }
}
}
}