hal: update snd device selection in auto hal
Use BUS device associated usecases for SND
device selection on automotive platform.
The criteria for SND device selection are
* HFP calls: usecase->id;
* NON HFP calls: out->car_audio_stream.
Change-Id: If5eb1283e6bfec074efceb4f545a28fdd3dbf601
Signed-off-by: Guodong Hu <guodhu@codeaurora.org>
diff --git a/hal/msm8974/platform.c b/hal/msm8974/platform.c
index f860df5..ab63925 100644
--- a/hal/msm8974/platform.c
+++ b/hal/msm8974/platform.c
@@ -6097,8 +6097,7 @@
snd_device = SND_DEVICE_OUT_BT_SCO_WB;
else
snd_device = SND_DEVICE_OUT_BT_SCO;
- } else if ((devices & (AUDIO_DEVICE_OUT_SPEAKER | AUDIO_DEVICE_OUT_SPEAKER_SAFE)) ||
- (devices & AUDIO_DEVICE_OUT_BUS)) {
+ } else if (devices & (AUDIO_DEVICE_OUT_SPEAKER | AUDIO_DEVICE_OUT_SPEAKER_SAFE)) {
if (my_data->is_vbat_speaker || my_data->is_bcl_speaker) {
if (hw_info_is_stereo_spkr(my_data->hw_info)) {
if (my_data->mono_speaker == SPKR_1)
@@ -6274,7 +6273,7 @@
snd_device = SND_DEVICE_OUT_AFE_PROXY;
audio_extn_set_afe_proxy_channel_mixer(adev, channel_count, snd_device);
} else if (devices & AUDIO_DEVICE_OUT_BUS) {
- snd_device = audio_extn_auto_hal_get_snd_device_for_car_audio_stream(out);
+ snd_device = audio_extn_auto_hal_get_output_snd_device(adev, out->usecase);
} else {
ALOGE("%s: Unknown device(s) %#x", __func__, devices);
}
@@ -6653,8 +6652,7 @@
} else if (out_device & AUDIO_DEVICE_OUT_SPEAKER ||
out_device & AUDIO_DEVICE_OUT_SPEAKER_SAFE ||
out_device & AUDIO_DEVICE_OUT_WIRED_HEADPHONE ||
- out_device & AUDIO_DEVICE_OUT_LINE ||
- out_device & AUDIO_DEVICE_OUT_BUS) {
+ out_device & AUDIO_DEVICE_OUT_LINE) {
if (my_data->fluence_type != FLUENCE_NONE &&
(my_data->fluence_in_voice_call ||
my_data->fluence_in_hfp_call) &&