hal: Add support for holi soundcard
Add soundcard support for multiple variants
of holi target.
Change-Id: I3b43a4cfd5434b18548a32151a78570a92b71205
diff --git a/hal/msm8974/hw_info.c b/hal/msm8974/hw_info.c
index 651634c..d8d6215 100644
--- a/hal/msm8974/hw_info.c
+++ b/hal/msm8974/hw_info.c
@@ -568,6 +568,22 @@
}
}
+static void update_hardware_info_holi(
+ struct hardware_info *hw_info,
+ const char *snd_card_name)
+{
+ if (!strncmp(snd_card_name, "holi-mtp-snd-card",
+ sizeof("holi-mtp-snd-card"))) {
+ strlcpy(hw_info->name, "holi", sizeof(hw_info->name));
+ } else if (!strncmp(snd_card_name, "holi-qrd-snd-card",
+ sizeof("holi-qrd-snd-card"))) {
+ strlcpy(hw_info->name, "holi", sizeof(hw_info->name));
+ } else {
+ ALOGW("%s: Not a holi device", __func__);
+ }
+ hw_info->is_stereo_spkr = false;
+}
+
static void update_hardware_info_lahaina(
struct hardware_info *hw_info,
const char *snd_card_name)
@@ -916,6 +932,9 @@
} else if(strstr(snd_card_name, "lahaina")) {
ALOGV("LAHAINA - variant soundcard");
update_hardware_info_lahaina(hw_info, snd_card_name);
+ } else if(strstr(snd_card_name, "holi")) {
+ ALOGV("HOLI - variant soundcard");
+ update_hardware_info_holi(hw_info, snd_card_name);
} else if(strstr(snd_card_name, "sdm439")) {
ALOGV("SDM439 - variant soundcard");
update_hardware_info_sdm439(hw_info, snd_card_name);
diff --git a/hal/msm8974/platform.c b/hal/msm8974/platform.c
index 0be37a4..5a987a0 100644
--- a/hal/msm8974/platform.c
+++ b/hal/msm8974/platform.c
@@ -1826,6 +1826,10 @@
sizeof("bengal-scubaidp-snd-card")) ||
!strncmp(snd_card_name, "bengal-qrd-snd-card",
sizeof("bengal-qrd-snd-card")) ||
+ !strncmp(snd_card_name, "holi-mtp-snd-card",
+ sizeof("holi-mtp-snd-card")) ||
+ !strncmp(snd_card_name, "holi-qrd-snd-card",
+ sizeof("holi-qrd-snd-card")) ||
!strncmp(snd_card_name, "msm8937-snd-card-mtp",
sizeof("msm8937-snd-card-mtp")) ||
!strncmp(snd_card_name, "msm8953-snd-card-mtp",
@@ -3395,6 +3399,10 @@
sizeof("bengal-qrd-snd-card"))) {
platform_info_init(get_xml_file_path(PLATFORM_INFO_XML_PATH_QRD_NAME),
my_data, PLATFORM);
+ } else if (!strncmp(snd_card_name, "holi-qrd-snd-card",
+ sizeof("holi-qrd-snd-card"))) {
+ platform_info_init(get_xml_file_path(PLATFORM_INFO_XML_PATH_QRD_NAME),
+ my_data, PLATFORM);
} else if (!strncmp(snd_card_name, "qcs405-wsa-snd-card",
sizeof("qcs405-wsa-snd-card"))) {
platform_info_init(get_xml_file_path(PLATFORM_INFO_XML_PATH_WSA_NAME),
@@ -3739,6 +3747,7 @@
!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, "holi", strlen("holi"))||
!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");
@@ -3767,8 +3776,9 @@
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")) &&
- strncmp(snd_card_name, "bengal-scuba", strlen("bengal-scuba"))) {
+ if((!strncmp(snd_card_name, "bengal", strlen("bengal")) &&
+ strncmp(snd_card_name, "bengal-scuba", strlen("bengal-scuba"))) ||
+ !strncmp(snd_card_name, "holi", strlen("holi"))) {
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 =