summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristopher N. Hesse <raymanfx@gmail.com>2017-03-20 19:40:53 +0100
committerChristopher N. Hesse <raymanfx@gmail.com>2017-03-20 19:48:35 +0100
commit56caa269d2fff5977724c486f7059d1cc11e0be7 (patch)
treed6931475c23c3fb4ce8e9d71ce985b92739e18b9
parent51bd12c20d5b0d4667299e87ba2e9a3317e81828 (diff)
downloadandroid_hardware_samsung-56caa269d2fff5977724c486f7059d1cc11e0be7.tar.gz
android_hardware_samsung-56caa269d2fff5977724c486f7059d1cc11e0be7.tar.bz2
android_hardware_samsung-56caa269d2fff5977724c486f7059d1cc11e0be7.zip
audio: Split BT SCO media/incall paths
Change-Id: I23a621855e8b96edcd92d8740dfec270ff7e7407
-rw-r--r--audio/audio_hw.c14
-rw-r--r--audio/audio_hw.h6
-rw-r--r--audio/mixer_paths_0.xml.template22
3 files changed, 27 insertions, 15 deletions
diff --git a/audio/audio_hw.c b/audio/audio_hw.c
index 2f8ce97..9a94e61 100644
--- a/audio/audio_hw.c
+++ b/audio/audio_hw.c
@@ -309,10 +309,11 @@ static const char * const device_table[SND_DEVICE_MAX] = {
[SND_DEVICE_OUT_VOICE_SPEAKER_WB] = "voice-speaker-wb",
[SND_DEVICE_OUT_VOICE_HEADPHONES] = "voice-headphones",
[SND_DEVICE_OUT_VOICE_HEADPHONES_WB] = "voice-headphones-wb",
+ [SND_DEVICE_OUT_VOICE_BT_SCO] = "voice-bt-sco-headset",
+ [SND_DEVICE_OUT_VOICE_BT_SCO_WB] = "voice-bt-sco-headset-wb",
[SND_DEVICE_OUT_HDMI] = "hdmi",
[SND_DEVICE_OUT_SPEAKER_AND_HDMI] = "speaker-and-hdmi",
[SND_DEVICE_OUT_BT_SCO] = "bt-sco-headset",
- [SND_DEVICE_OUT_BT_SCO_WB] = "bt-sco-headset-wb",
/* Capture sound devices */
[SND_DEVICE_IN_EARPIECE_MIC] = "earpiece-mic",
@@ -328,9 +329,10 @@ static const char * const device_table[SND_DEVICE_MAX] = {
[SND_DEVICE_IN_VOICE_SPEAKER_MIC_WB] = "voice-speaker-mic-wb",
[SND_DEVICE_IN_VOICE_HEADSET_MIC] = "voice-headset-mic",
[SND_DEVICE_IN_VOICE_HEADSET_MIC_WB] = "voice-headset-mic-wb",
+ [SND_DEVICE_IN_VOICE_BT_SCO_MIC] = "voice-bt-sco-mic",
+ [SND_DEVICE_IN_VOICE_BT_SCO_MIC_WB] = "voice-bt-sco-mic-wb",
[SND_DEVICE_IN_HDMI_MIC] = "hdmi-mic",
[SND_DEVICE_IN_BT_SCO_MIC] = "bt-sco-mic",
- [SND_DEVICE_IN_BT_SCO_MIC_WB] = "bt-sco-mic-wb",
[SND_DEVICE_IN_CAMCORDER_MIC] = "camcorder-mic",
[SND_DEVICE_IN_VOICE_REC_HEADSET_MIC] = "voice-rec-headset-mic",
[SND_DEVICE_IN_VOICE_REC_MIC] = "voice-rec-mic",
@@ -534,7 +536,7 @@ static snd_device_t get_output_snd_device(struct audio_device *adev, audio_devic
devices & AUDIO_DEVICE_OUT_WIRED_HEADSET) {
snd_device = SND_DEVICE_OUT_VOICE_HEADPHONES;
} else if (devices & AUDIO_DEVICE_OUT_ALL_SCO) {
- snd_device = SND_DEVICE_OUT_BT_SCO;
+ snd_device = SND_DEVICE_OUT_VOICE_BT_SCO;
} else if (devices & AUDIO_DEVICE_OUT_SPEAKER) {
snd_device = SND_DEVICE_OUT_VOICE_SPEAKER;
} else if (devices & AUDIO_DEVICE_OUT_EARPIECE) {
@@ -546,7 +548,7 @@ static snd_device_t get_output_snd_device(struct audio_device *adev, audio_devic
devices & AUDIO_DEVICE_OUT_WIRED_HEADSET) {
snd_device = SND_DEVICE_OUT_VOICE_HEADPHONES_WB;
} else if (devices & AUDIO_DEVICE_OUT_ALL_SCO) {
- snd_device = SND_DEVICE_OUT_BT_SCO_WB;
+ snd_device = SND_DEVICE_OUT_VOICE_BT_SCO_WB;
} else if (devices & AUDIO_DEVICE_OUT_SPEAKER) {
snd_device = SND_DEVICE_OUT_VOICE_SPEAKER_WB;
} else if (devices & AUDIO_DEVICE_OUT_EARPIECE) {
@@ -663,9 +665,9 @@ static snd_device_t get_input_snd_device(struct audio_device *adev, audio_device
if (out_device & AUDIO_DEVICE_OUT_BLUETOOTH_SCO_HEADSET) {
if (voice_session_uses_wideband(adev->voice.session)) {
- snd_device = SND_DEVICE_IN_BT_SCO_MIC_WB;
+ snd_device = SND_DEVICE_IN_VOICE_BT_SCO_MIC_WB;
} else {
- snd_device = SND_DEVICE_IN_BT_SCO_MIC;
+ snd_device = SND_DEVICE_IN_VOICE_BT_SCO_MIC;
}
} else if (voice_session_uses_twomic(adev->voice.session)) {
snd_device = SND_DEVICE_IN_VOICE_EARPIECE_MIC;
diff --git a/audio/audio_hw.h b/audio/audio_hw.h
index 3bafff2..d05acde 100644
--- a/audio/audio_hw.h
+++ b/audio/audio_hw.h
@@ -73,10 +73,11 @@ enum {
SND_DEVICE_OUT_VOICE_SPEAKER_WB,
SND_DEVICE_OUT_VOICE_HEADPHONES,
SND_DEVICE_OUT_VOICE_HEADPHONES_WB,
+ SND_DEVICE_OUT_VOICE_BT_SCO,
+ SND_DEVICE_OUT_VOICE_BT_SCO_WB,
SND_DEVICE_OUT_HDMI,
SND_DEVICE_OUT_SPEAKER_AND_HDMI,
SND_DEVICE_OUT_BT_SCO,
- SND_DEVICE_OUT_BT_SCO_WB,
SND_DEVICE_OUT_END,
/*
@@ -98,9 +99,10 @@ enum {
SND_DEVICE_IN_VOICE_SPEAKER_MIC_WB,
SND_DEVICE_IN_VOICE_HEADSET_MIC,
SND_DEVICE_IN_VOICE_HEADSET_MIC_WB,
+ SND_DEVICE_IN_VOICE_BT_SCO_MIC,
+ SND_DEVICE_IN_VOICE_BT_SCO_MIC_WB,
SND_DEVICE_IN_HDMI_MIC,
SND_DEVICE_IN_BT_SCO_MIC,
- SND_DEVICE_IN_BT_SCO_MIC_WB,
SND_DEVICE_IN_CAMCORDER_MIC,
SND_DEVICE_IN_VOICE_REC_HEADSET_MIC,
SND_DEVICE_IN_VOICE_REC_MIC,
diff --git a/audio/mixer_paths_0.xml.template b/audio/mixer_paths_0.xml.template
index 4db9540..04453ee 100644
--- a/audio/mixer_paths_0.xml.template
+++ b/audio/mixer_paths_0.xml.template
@@ -56,19 +56,23 @@
<!-- Empty path -->
</path>
- <path name="hdmi">
+ <path name="voice-bt-sco-headset">
<!-- Empty path -->
</path>
- <path name="speaker-and-hdmi">
+ <path name="voice-bt-sco-headset-wb">
<!-- Empty path -->
</path>
- <path name="bt-sco-headset">
+ <path name="hdmi">
+ <!-- Empty path -->
+ </path>
+
+ <path name="speaker-and-hdmi">
<!-- Empty path -->
</path>
- <path name="bt-sco-headset-wb">
+ <path name="bt-sco-headset">
<!-- Empty path -->
</path>
@@ -120,15 +124,19 @@
<!-- Empty path -->
</path>
- <path name="hdmi-mic">
+ <path name="voice-bt-sco-mic">
<!-- Empty path -->
</path>
- <path name="bt-sco-mic">
+ <path name="voice-bt-sco-mic-wb">
+ <!-- Empty path -->
+ </path>
+
+ <path name="hdmi-mic">
<!-- Empty path -->
</path>
- <path name="bt-sco-mic-wb">
+ <path name="bt-sco-mic">
<!-- Empty path -->
</path>