hal: enable device for AEC + NS in VR single mic usecase
am: f344068f97
* commit 'f344068f97c2b5102bcd8540b42ac6c5f87c305e':
hal: enable device for AEC + NS in VR single mic usecase
Change-Id: I420931b292ab8cf1a75858615c50eded0c3177bf
diff --git a/hal/msm8974/platform.c b/hal/msm8974/platform.c
index 5acf86f..220ccbb 100644
--- a/hal/msm8974/platform.c
+++ b/hal/msm8974/platform.c
@@ -259,6 +259,7 @@
[SND_DEVICE_IN_VOICE_REC_MIC] = "voice-rec-mic",
[SND_DEVICE_IN_VOICE_REC_MIC_NS] = "voice-rec-mic",
[SND_DEVICE_IN_VOICE_REC_MIC_AEC] = "voice-rec-mic",
+ [SND_DEVICE_IN_VOICE_REC_MIC_AEC_NS] = "voice-rec-mic",
[SND_DEVICE_IN_VOICE_REC_DMIC_STEREO] = "voice-rec-dmic-ef",
[SND_DEVICE_IN_VOICE_REC_DMIC_FLUENCE] = "voice-rec-dmic-ef-fluence",
[SND_DEVICE_IN_VOICE_REC_HEADSET_MIC] = "headset-mic",
@@ -354,6 +355,7 @@
[SND_DEVICE_IN_VOICE_REC_MIC] = ACDB_ID_VOICE_REC_MIC,
[SND_DEVICE_IN_VOICE_REC_MIC_NS] = 113,
[SND_DEVICE_IN_VOICE_REC_MIC_AEC] = 112,
+ [SND_DEVICE_IN_VOICE_REC_MIC_AEC_NS] = 114,
[SND_DEVICE_IN_VOICE_REC_DMIC_STEREO] = 35,
[SND_DEVICE_IN_VOICE_REC_DMIC_FLUENCE] = 43,
[SND_DEVICE_IN_VOICE_REC_HEADSET_MIC] = ACDB_ID_HEADSET_MIC_AEC,
@@ -456,6 +458,7 @@
{TO_NAME_INDEX(SND_DEVICE_IN_VOICE_REC_MIC)},
{TO_NAME_INDEX(SND_DEVICE_IN_VOICE_REC_MIC_NS)},
{TO_NAME_INDEX(SND_DEVICE_IN_VOICE_REC_MIC_AEC)},
+ {TO_NAME_INDEX(SND_DEVICE_IN_VOICE_REC_MIC_AEC_NS)},
{TO_NAME_INDEX(SND_DEVICE_IN_VOICE_REC_DMIC_STEREO)},
{TO_NAME_INDEX(SND_DEVICE_IN_VOICE_REC_DMIC_FLUENCE)},
{TO_NAME_INDEX(SND_DEVICE_IN_VOICE_REC_HEADSET_MIC)},
@@ -2101,13 +2104,18 @@
snd_device = SND_DEVICE_IN_QUAD_MIC;
}
if (snd_device == SND_DEVICE_NONE) {
- if (adev->active_input->enable_ns)
- snd_device = SND_DEVICE_IN_VOICE_REC_MIC_NS;
- else if (adev->active_input->enable_aec) {
- snd_device = SND_DEVICE_IN_VOICE_REC_MIC_AEC;
+ if (adev->active_input->enable_aec) {
+ if (adev->active_input->enable_ns) {
+ snd_device = SND_DEVICE_IN_VOICE_REC_MIC_AEC_NS;
+ } else {
+ snd_device = SND_DEVICE_IN_VOICE_REC_MIC_AEC;
+ }
platform_set_echo_reference(adev, true, out_device);
- } else
+ } else if (adev->active_input->enable_ns) {
+ snd_device = SND_DEVICE_IN_VOICE_REC_MIC_NS;
+ } else {
snd_device = SND_DEVICE_IN_VOICE_REC_MIC;
+ }
}
} else if (in_device & AUDIO_DEVICE_IN_WIRED_HEADSET) {
snd_device = SND_DEVICE_IN_VOICE_REC_HEADSET_MIC;
diff --git a/hal/msm8974/platform.h b/hal/msm8974/platform.h
index 0f81915..aa4c08d 100644
--- a/hal/msm8974/platform.h
+++ b/hal/msm8974/platform.h
@@ -129,6 +129,7 @@
SND_DEVICE_IN_VOICE_REC_MIC,
SND_DEVICE_IN_VOICE_REC_MIC_NS,
SND_DEVICE_IN_VOICE_REC_MIC_AEC,
+ SND_DEVICE_IN_VOICE_REC_MIC_AEC_NS,
SND_DEVICE_IN_VOICE_REC_DMIC_STEREO,
SND_DEVICE_IN_VOICE_REC_DMIC_FLUENCE,
SND_DEVICE_IN_VOICE_REC_HEADSET_MIC,