Merge "hal: Fix device selection at start of the voice call" into audio-userspace.lnx.2.1-dev
diff --git a/hal/audio_hw.c b/hal/audio_hw.c
index a8ebb6b..8660b5a 100644
--- a/hal/audio_hw.c
+++ b/hal/audio_hw.c
@@ -2306,14 +2306,6 @@
if (val != 0) {
out->devices = val;
- if (!out->standby) {
- audio_extn_perf_lock_acquire(&adev->perf_lock_handle, 0,
- adev->perf_lock_opts,
- adev->perf_lock_opts_size);
- select_devices(adev, out->usecase);
- audio_extn_perf_lock_release(&adev->perf_lock_handle);
- }
-
if (output_drives_call(adev, out)) {
if(!voice_is_in_call(adev)) {
if (adev->mode == AUDIO_MODE_IN_CALL) {
@@ -2325,6 +2317,14 @@
voice_update_devices_for_all_voice_usecases(adev);
}
}
+
+ if (!out->standby) {
+ audio_extn_perf_lock_acquire(&adev->perf_lock_handle, 0,
+ adev->perf_lock_opts,
+ adev->perf_lock_opts_size);
+ select_devices(adev, out->usecase);
+ audio_extn_perf_lock_release(&adev->perf_lock_handle);
+ }
}
pthread_mutex_unlock(&adev->lock);