hal: Add support for TTS output stream
Add new audio playback use case to support stream for
Transmitted Through Speaker (TTS) data.
Bug: 21334936
Change-Id: Ief4519f30516f39078fdcdfce90645194bd885ea
diff --git a/hal/audio_hw.c b/hal/audio_hw.c
index 20763ac..aa9a7ae 100644
--- a/hal/audio_hw.c
+++ b/hal/audio_hw.c
@@ -145,6 +145,7 @@
[USECASE_AUDIO_PLAYBACK_LOW_LATENCY] = "low-latency-playback",
[USECASE_AUDIO_PLAYBACK_MULTI_CH] = "multi-channel-playback",
[USECASE_AUDIO_PLAYBACK_OFFLOAD] = "compress-offload-playback",
+ [USECASE_AUDIO_PLAYBACK_TTS] = "audio-tts-playback",
[USECASE_AUDIO_RECORD] = "audio-record",
[USECASE_AUDIO_RECORD_LOW_LATENCY] = "low-latency-record",
@@ -2097,6 +2098,9 @@
if (out->flags & AUDIO_OUTPUT_FLAG_DEEP_BUFFER) {
out->usecase = USECASE_AUDIO_PLAYBACK_DEEP_BUFFER;
out->config = pcm_config_deep_buffer;
+ } else if (out->flags & AUDIO_OUTPUT_FLAG_TTS) {
+ out->usecase = USECASE_AUDIO_PLAYBACK_TTS;
+ out->config = pcm_config_deep_buffer;
} else {
out->usecase = USECASE_AUDIO_PLAYBACK_LOW_LATENCY;
out->config = pcm_config_low_latency;
diff --git a/hal/audio_hw.h b/hal/audio_hw.h
index d531744..92cd5de 100644
--- a/hal/audio_hw.h
+++ b/hal/audio_hw.h
@@ -57,6 +57,7 @@
USECASE_AUDIO_PLAYBACK_LOW_LATENCY,
USECASE_AUDIO_PLAYBACK_MULTI_CH,
USECASE_AUDIO_PLAYBACK_OFFLOAD,
+ USECASE_AUDIO_PLAYBACK_TTS,
/* HFP Use case*/
USECASE_AUDIO_HFP_SCO,
diff --git a/hal/msm8974/platform.c b/hal/msm8974/platform.c
index e0ea8ed..a90fdc5 100644
--- a/hal/msm8974/platform.c
+++ b/hal/msm8974/platform.c
@@ -102,6 +102,8 @@
MULTIMEDIA2_PCM_DEVICE},
[USECASE_AUDIO_PLAYBACK_OFFLOAD] = {PLAYBACK_OFFLOAD_DEVICE,
PLAYBACK_OFFLOAD_DEVICE},
+ [USECASE_AUDIO_PLAYBACK_TTS] = {MULTIMEDIA3_PCM_DEVICE,
+ MULTIMEDIA3_PCM_DEVICE},
[USECASE_AUDIO_RECORD] = {AUDIO_RECORD_PCM_DEVICE,
AUDIO_RECORD_PCM_DEVICE},
[USECASE_AUDIO_RECORD_LOW_LATENCY] = {LOWLATENCY_PCM_DEVICE,
diff --git a/hal/msm8974/platform.h b/hal/msm8974/platform.h
index cf7d20d..c76c700 100644
--- a/hal/msm8974/platform.h
+++ b/hal/msm8974/platform.h
@@ -182,8 +182,12 @@
#define DEEP_BUFFER_PCM_DEVICE 0
#define AUDIO_RECORD_PCM_DEVICE 0
#define MULTIMEDIA2_PCM_DEVICE 1
+
#define SPKR_PROT_CALIB_RX_PCM_DEVICE 5
#define SPKR_PROT_CALIB_TX_PCM_DEVICE 25
+
+#define MULTIMEDIA3_PCM_DEVICE 4
+
#define PLAYBACK_OFFLOAD_DEVICE 9
#define LOWLATENCY_PCM_DEVICE 15
#define VOICE_VSID 0x10C01000