Ahal: update usb service interval when switching to new usb device
update usb service interval when switching device to new usb
headset whether it is in voice call or not
Change-Id: I9debc8834eefc13d4c2150a02f9c95fae4d99e58
diff --git a/hal/audio_hw.c b/hal/audio_hw.c
index 12e89dc..1802120 100644
--- a/hal/audio_hw.c
+++ b/hal/audio_hw.c
@@ -4936,14 +4936,6 @@
if (!voice_is_call_state_active(adev)) {
if (adev->mode == AUDIO_MODE_IN_CALL) {
adev->current_call_output = out;
- if (is_usb_out_device_type(&out->device_list)) {
- service_interval =
- audio_extn_usb_find_service_interval(true, true /*playback*/);
- audio_extn_usb_set_service_interval(true /*playback*/,
- service_interval,
- &reconfig);
- ALOGD("%s, svc_int(%ld),reconfig(%d)",__func__,service_interval, reconfig);
- }
ret = voice_start_call(adev);
}
} else {
@@ -4952,6 +4944,14 @@
}
}
+ if (is_usb_out_device_type(&out->device_list)) {
+ service_interval = audio_extn_usb_find_service_interval(false, true /*playback*/);
+ audio_extn_usb_set_service_interval(true /*playback*/,
+ service_interval,
+ &reconfig);
+ ALOGD("%s, svc_int(%ld),reconfig(%d)",__func__,service_interval, reconfig);
+ }
+
if (!out->standby) {
if (!same_dev) {
ALOGV("update routing change");