Initial commit for new target - msmfalcon
Add intial commit to support build for msmfalcon.
CRs-Fixed: 1044042
Change-Id: Iac2f3e1d53c03864098cb7e074d4e7e8a2332290
diff --git a/hal/Android.mk b/hal/Android.mk
index cf8533c..83787e3 100644
--- a/hal/Android.mk
+++ b/hal/Android.mk
@@ -35,13 +35,16 @@
endif
endif
-ifneq ($(filter msm8916 msm8909 msm8952 msm8937 thorium msm8953 msmgold,$(TARGET_BOARD_PLATFORM)),)
+ifneq ($(filter msm8916 msm8909 msm8952 msm8937 thorium msm8953 msmgold msmfalcon,$(TARGET_BOARD_PLATFORM)),)
AUDIO_PLATFORM = msm8916
MULTIPLE_HW_VARIANTS_ENABLED := true
LOCAL_CFLAGS := -DPLATFORM_MSM8916
ifneq ($(filter msm8909,$(TARGET_BOARD_PLATFORM)),)
LOCAL_CFLAGS := -DPLATFORM_MSM8909
endif
+ifneq ($(filter msmfalcon,$(TARGET_BOARD_PLATFORM)),)
+ LOCAL_CFLAGS := -DPLATFORM_MSMFALCON
+endif
endif
LOCAL_SRC_FILES := \
diff --git a/hal/audio_extn/hfp.c b/hal/audio_extn/hfp.c
index 1fba5c6..5a45b80 100644
--- a/hal/audio_extn/hfp.c
+++ b/hal/audio_extn/hfp.c
@@ -49,7 +49,7 @@
#define HFP_RX_VOLUME "SEC AUXPCM LOOPBACK Volume"
#elif defined PLATFORM_MSM8996
#define HFP_RX_VOLUME "PRI AUXPCM LOOPBACK Volume"
-#elif defined PLATFORM_MSMCOBALT
+#elif defined (PLATFORM_MSMCOBALT) || defined (PLATFORM_MSMFALCON)
#define HFP_RX_VOLUME "SLIMBUS_7 LOOPBACK Volume"
#else
#define HFP_RX_VOLUME "Internal HFP RX Volume"
diff --git a/hal/msm8916/hw_info.c b/hal/msm8916/hw_info.c
index 07a060f..1d10ded 100644
--- a/hal/msm8916/hw_info.c
+++ b/hal/msm8916/hw_info.c
@@ -285,8 +285,20 @@
hw_info->snd_devices = NULL;
hw_info->num_snd_devices = 0;
strlcpy(hw_info->dev_extn, "", sizeof(hw_info->dev_extn));
+ } else if (!strcmp(snd_card_name, "msmfalcon-snd-card-mtp")) {
+ strlcpy(hw_info->type, "", sizeof(hw_info->type));
+ strlcpy(hw_info->name, "msmfalcon", sizeof(hw_info->name));
+ hw_info->snd_devices = NULL;
+ hw_info->num_snd_devices = 0;
+ strlcpy(hw_info->dev_extn, "", sizeof(hw_info->dev_extn));
+ } else if (!strcmp(snd_card_name, "msmfalcon-tasha-snd-card")) {
+ strlcpy(hw_info->type, "", sizeof(hw_info->type));
+ strlcpy(hw_info->name, "msmfalcon", sizeof(hw_info->name));
+ hw_info->snd_devices = NULL;
+ hw_info->num_snd_devices = 0;
+ strlcpy(hw_info->dev_extn, "", sizeof(hw_info->dev_extn));
} else {
- ALOGW("%s: Not an 8x16/8909/8917/8937/8939/8940/8952/8953 device", __func__);
+ ALOGW("%s: Not an 8x16/8909/8917/8937/8939/8940/8952/8953/falcon device", __func__);
}
hw_info->is_wsa_combo_suppported = false;
@@ -306,7 +318,7 @@
strstr(snd_card_name, "msm8909") || strstr(snd_card_name, "msm8952") ||
strstr(snd_card_name, "msm8976") || strstr(snd_card_name, "msm8953") ||
strstr(snd_card_name, "msm8937") || strstr(snd_card_name, "msm8917") ||
- strstr(snd_card_name, "msm8940") ) {
+ strstr(snd_card_name, "msm8940") || strstr(snd_card_name, "msmfalcon")) {
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 40f26de..82f1934 100644
--- a/hal/msm8916/platform.c
+++ b/hal/msm8916/platform.c
@@ -819,7 +819,9 @@
!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")))
+ sizeof("msm8953-tashalite-snd-card")) ||
+ !strncmp(snd_card_name, "msmfalcon-tasha-snd-card",
+ sizeof("msmfalcon-tasha-snd-card")))
{
ALOGI("%s: snd_card_name: %s",__func__,snd_card_name);
is_external_codec = true;
@@ -1107,6 +1109,13 @@
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, "msmfalcon-tasha-snd-card",
+ sizeof("msmfalcon-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 {
strlcpy(mixer_xml_path, MIXER_XML_PATH,
sizeof(MIXER_XML_PATH));
diff --git a/hal/msm8916/platform.h b/hal/msm8916/platform.h
index 9c2be1a..7c877b5 100644
--- a/hal/msm8916/platform.h
+++ b/hal/msm8916/platform.h
@@ -289,7 +289,11 @@
#define COMPRESS_VOIP_CALL_PCM_DEVICE 3
/* Define macro for Internal FM volume mixer */
+#ifdef PLATFORM_MSMFALCON
+#define FM_RX_VOLUME "SLIMBUS_8 LOOPBACK Volume"
+#else
#define FM_RX_VOLUME "Internal FM RX Volume"
+#endif
#define LOWLATENCY_PCM_DEVICE 12
#define EC_REF_RX "I2S_RX"