hal: add audio support for kona
Add audio support for kona.
Change-Id: Ib1eb05209ce3220e00fa15cddc5338b3f62871f9
diff --git a/hal/msm8974/hw_info.c b/hal/msm8974/hw_info.c
index 264dfce..1ba94f0 100644
--- a/hal/msm8974/hw_info.c
+++ b/hal/msm8974/hw_info.c
@@ -505,6 +505,21 @@
}
}
+static void update_hardware_info_kona(struct hardware_info *hw_info,
+ const char *snd_card_name)
+{
+ if (!strncmp(snd_card_name, "kona-mtp-snd-card",
+ sizeof("kona-mtp-snd-card"))) {
+ strlcpy(hw_info->name, "kona", sizeof(hw_info->name));
+ } else if (!strncmp(snd_card_name, "kona-qrd-snd-card",
+ sizeof("kona-qrd-snd-card"))) {
+ strlcpy(hw_info->name, "kona", sizeof(hw_info->name));
+ hw_info->is_stereo_spkr = false;
+ } else {
+ ALOGW("%s: Not a kona device", __func__);
+ }
+}
+
static void update_hardware_info_sdx(struct hardware_info *hw_info __unused, const char *snd_card_name __unused)
{
ALOGW("%s: Not a sdx device", __func__);
@@ -701,6 +716,9 @@
strstr(snd_card_name, "sa8155")) {
ALOGV("MSMNILE - variant soundcard");
update_hardware_info_msmnile(hw_info, snd_card_name);
+ } else if (strstr(snd_card_name, "kona")) {
+ ALOGV("KONA - variant soundcard");
+ update_hardware_info_kona(hw_info, snd_card_name);
} else {
ALOGE("%s: Unsupported target %s:",__func__, snd_card_name);
free(hw_info);
diff --git a/hal/msm8974/platform.c b/hal/msm8974/platform.c
index 30b9d10..d9a0e3c 100644
--- a/hal/msm8974/platform.c
+++ b/hal/msm8974/platform.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2013-2018, The Linux Foundation. All rights reserved.
+ * Copyright (c) 2013-2019, The Linux Foundation. All rights reserved.
* Not a Contribution.
*
* Copyright (C) 2013 The Android Open Source Project
@@ -80,7 +80,10 @@
#endif
#include <linux/msm_audio.h>
-#if defined (PLATFORM_MSM8998) || (PLATFORM_SDM845) || (PLATFORM_SDM710) || defined (PLATFORM_QCS605) || defined (PLATFORM_MSMNILE) || defined (PLATFORM_MSMSTEPPE) || defined (PLATFORM_TRINKET)
+#if defined (PLATFORM_MSM8998) || (PLATFORM_SDM845) || (PLATFORM_SDM710) || \
+ defined (PLATFORM_QCS605) || defined (PLATFORM_MSMNILE) || \
+ defined (PLATFORM_MSMSTEPPE) || defined (PLATFORM_TRINKET) || \
+ defined (PLATFORM_KONA)
#include <sound/devdep_params.h>
#endif
@@ -1092,7 +1095,11 @@
!strncmp(snd_card_name, "sm6150-wcd9375-snd-card",
sizeof("sm6150-wcd9375-snd-card")) ||
!strncmp(snd_card_name, "sm6150-wcd9375qrd-snd-card",
- sizeof("sm6150-wcd9375qrd-snd-card"))) {
+ sizeof("sm6150-wcd9375qrd-snd-card")) ||
+ !strncmp(snd_card_name, "kona-mtp-snd-card",
+ sizeof("kona-mtp-snd-card")) ||
+ !strncmp(snd_card_name, "kona-qrd-snd-card",
+ sizeof("kona-qrd-snd-card"))) {
ALOGI("%s: snd_card_name: %s",__func__,snd_card_name);
my_data->is_internal_codec = true;
my_data->is_slimbus_interface = false;
@@ -2258,6 +2265,9 @@
else if (!strncmp(snd_card_name, "sm6150-wcd9375qrd-snd-card",
sizeof("sm6150-wcd9375qrd-snd-card")))
platform_info_init(PLATFORM_INFO_XML_PATH_QRD, my_data, PLATFORM);
+ else if (!strncmp(snd_card_name, "kona-qrd-snd-card",
+ sizeof("kona-qrd-snd-card")))
+ platform_info_init(PLATFORM_INFO_XML_PATH_QRD, my_data, PLATFORM);
else if (my_data->is_internal_codec)
platform_info_init(PLATFORM_INFO_XML_PATH_INTCODEC, my_data, PLATFORM);
else
@@ -2478,7 +2488,8 @@
if (!my_data->is_slimbus_interface) {
//TODO:: make generic interfaceface to check Slimbus/I2S/CDC_DMA
- if (!strncmp(snd_card_name, "sm6150", strlen("sm6150"))) {
+ if (!strncmp(snd_card_name, "sm6150", strlen("sm6150")) ||
+ !strncmp(snd_card_name, "kona", strlen("kona"))) {
my_data->current_backend_cfg[DEFAULT_CODEC_BACKEND].bitwidth_mixer_ctl =
strdup("WSA_CDC_DMA_RX_0 Format");
my_data->current_backend_cfg[DEFAULT_CODEC_BACKEND].samplerate_mixer_ctl =
@@ -8107,7 +8118,10 @@
return sample_rate;
}
-#if defined (PLATFORM_MSM8998) || (PLATFORM_SDM845) || (PLATFORM_SDM710) || defined (PLATFORM_QCS605) || defined (PLATFORM_MSMNILE) || defined (PLATFORM_MSMSTEPPE) || defined (PLATFORM_TRINKET)
+#if defined (PLATFORM_MSM8998) || (PLATFORM_SDM845) || (PLATFORM_SDM710) || \
+ defined (PLATFORM_QCS605) || defined (PLATFORM_MSMNILE) || \
+ defined (PLATFORM_MSMSTEPPE) || defined (PLATFORM_TRINKET) || \
+ defined (PLATFORM_KONA)
int platform_get_mmap_data_fd(void *platform, int fe_dev, int dir, int *fd,
uint32_t *size)
{
diff --git a/hal/msm8974/platform.h b/hal/msm8974/platform.h
index 23953e6..06b6b27 100644
--- a/hal/msm8974/platform.h
+++ b/hal/msm8974/platform.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2013-2018, The Linux Foundation. All rights reserved.
+ * Copyright (c) 2013-2019, The Linux Foundation. All rights reserved.
* Not a Contribution.
*
* Copyright (C) 2013 The Android Open Source Project
@@ -386,11 +386,21 @@
#define PLAYBACK_OFFLOAD_DEVICE 9
// Direct_PCM
-#if defined (PLATFORM_MSM8994) || defined (PLATFORM_MSM8996) || defined (PLATFORM_APQ8084) || defined (PLATFORM_MSM8998) || defined (PLATFORM_SDM845) || defined (PLATFORM_SDM710) ||defined (PLATFORM_QCS605) ||defined (PLATFORM_SDX24) || defined (PLATFORM_MSMNILE) || defined (PLATFORM_MSMSTEPPE) || defined (PLATFORM_TRINKET)
+#if defined (PLATFORM_MSM8994) || defined (PLATFORM_MSM8996) || \
+ defined (PLATFORM_APQ8084) || defined (PLATFORM_MSM8998) || \
+ defined (PLATFORM_SDM845) || defined (PLATFORM_SDM710) || \
+ defined (PLATFORM_QCS605) ||defined (PLATFORM_SDX24) || \
+ defined (PLATFORM_MSMNILE) || defined (PLATFORM_MSMSTEPPE) || \
+ defined (PLATFORM_TRINKET) || defined (PLATFORM_KONA)
#define PLAYBACK_OFFLOAD_DEVICE2 17
#endif
-#if defined (PLATFORM_APQ8084) || defined (PLATFORM_MSM8996) || defined (PLATFORM_MSM8998) || defined (PLATFORM_SDM845) || defined (PLATFORM_SDM710) || defined(PLATFORM_QCS605) || defined (PLATFORM_SDX24) || defined (PLATFORM_MSMNILE) || defined (PLATFORM_MSMSTEPPE) || defined (PLATFORM_TRINKET)
+#if defined (PLATFORM_APQ8084) || defined (PLATFORM_MSM8996) || \
+ defined (PLATFORM_MSM8998) || defined (PLATFORM_SDM845) || \
+ defined (PLATFORM_SDM710) || defined(PLATFORM_QCS605) || \
+ defined (PLATFORM_SDX24) || defined (PLATFORM_MSMNILE) || \
+ defined (PLATFORM_MSMSTEPPE) || defined (PLATFORM_TRINKET) || \
+ defined (PLATFORM_KONA)
#define PLAYBACK_OFFLOAD_DEVICE3 18
#define PLAYBACK_OFFLOAD_DEVICE4 34
#define PLAYBACK_OFFLOAD_DEVICE5 35
@@ -516,9 +526,12 @@
#define FM_RX_VOLUME "Quat MI2S FM RX Volume"
#elif PLATFORM_MSM8994
#define FM_RX_VOLUME "PRI MI2S LOOPBACK Volume"
-#elif PLATFORM_MSM8996
+#elif defined (PLATFORM_MSM8996) || defined (PLATFORM_KONA)
#define FM_RX_VOLUME "Tert MI2S LOOPBACK Volume"
-#elif defined (PLATFORM_MSM8998) || defined (PLATFORM_SDM845) || defined (PLATFORM_MSMFALCON) || defined (PLATFORM_SDM710) || defined (PLATFORM_QCS605) || defined (PLATFORM_MSMNILE) || defined (PLATFORM_MSMSTEPPE) || defined (PLATFORM_TRINKET)
+#elif defined (PLATFORM_MSM8998) || defined (PLATFORM_SDM845) || \
+ defined (PLATFORM_MSMFALCON) || defined (PLATFORM_SDM710) || \
+ defined (PLATFORM_QCS605) || defined (PLATFORM_MSMNILE) || \
+ defined (PLATFORM_MSMSTEPPE) || defined (PLATFORM_TRINKET)
#define FM_RX_VOLUME "SLIMBUS_8 LOOPBACK Volume"
#else
#define FM_RX_VOLUME "Internal FM RX Volume"