Merge "audio: Force select device whenever a stream on speaker_safe goes to standby" into oc-dr1-dev am: 82628456f6
am: fa43e57cf9
Change-Id: Ic7b06c387727b90ff9d78cc65587f2efe273a204
diff --git a/hal/audio_hw.c b/hal/audio_hw.c
index e66ad9a..561f4a5 100644
--- a/hal/audio_hw.c
+++ b/hal/audio_hw.c
@@ -1793,6 +1793,15 @@
/* Must be called after removing the usecase from list */
if (out->devices & AUDIO_DEVICE_OUT_AUX_DIGITAL)
check_and_set_hdmi_channels(adev, DEFAULT_HDMI_OUT_CHANNELS);
+ else if (out->devices & AUDIO_DEVICE_OUT_SPEAKER_SAFE) {
+ struct listnode *node;
+ struct audio_usecase *usecase;
+ list_for_each(node, &adev->usecase_list) {
+ usecase = node_to_item(node, struct audio_usecase, list);
+ if (usecase->devices & AUDIO_DEVICE_OUT_SPEAKER)
+ select_devices(adev, usecase->id);
+ }
+ }
ALOGV("%s: exit: status(%d)", __func__, ret);
return ret;