summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorstenkinevgeniy <stenkinevgeniy@gmail.com>2018-07-09 14:48:19 +0000
committerJan Altensen <info@stricted.net>2019-02-05 20:11:32 +0100
commit884938a258cb608f316d52ce759a6cbd84597d59 (patch)
tree496d9afc9799cb79bcddb55147aa4e8a95f94350
parent53929f79f9f1efe9ccd32a853ee99ce56003912f (diff)
downloadandroid_hardware_samsung-884938a258cb608f316d52ce759a6cbd84597d59.tar.gz
android_hardware_samsung-884938a258cb608f316d52ce759a6cbd84597d59.tar.bz2
android_hardware_samsung-884938a258cb608f316d52ce759a6cbd84597d59.zip
Audio: fix voip calls over bluetooth for Wolfson Microelectronics codecs.
Some devices, that using wm* codecs like i9500, t805, p601 and others need open CP pcm's when using BT SCO in IN_COMMUNICATION mode. Change-Id: I64935aabf1c52e66409e727f02752cd325f8ef58 Signed-off-by: stenkinevgeniy <stenkinevgeniy@gmail.com>
-rw-r--r--audio/voice.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/audio/voice.c b/audio/voice.c
index 2219d9a..6d5e613 100644
--- a/audio/voice.c
+++ b/audio/voice.c
@@ -153,6 +153,10 @@ void stop_voice_session_bt_sco(struct audio_device *adev) {
pcm_close(adev->pcm_sco_tx);
adev->pcm_sco_tx = NULL;
}
+
+ /* audio codecs like wm5201 need open modem pcm while using bt sco */
+ if (adev->mode != AUDIO_MODE_IN_CALL)
+ stop_voice_session(adev->voice.session);
}
/* must be called with the hw device mutex locked, OK to hold other mutexes */
@@ -198,6 +202,10 @@ void start_voice_session_bt_sco(struct audio_device *adev)
pcm_start(adev->pcm_sco_rx);
pcm_start(adev->pcm_sco_tx);
+ /* audio codecs like wm5201 need open modem pcm while using bt sco */
+ if (adev->mode != AUDIO_MODE_IN_CALL)
+ start_voice_session(adev->voice.session);
+
return;
err_sco_tx: