summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorandroid-build-team Robot <android-build-team-robot@google.com>2019-06-19 03:08:03 +0000
committerandroid-build-team Robot <android-build-team-robot@google.com>2019-06-19 03:08:03 +0000
commit38cfe6cec855c1f07775b8926d23e46d548f8c80 (patch)
tree79a090807abb33f1215f4b3de3415f13daa2190e
parented7dddb8233df8421c2a47c11ffa8b66b8d60173 (diff)
parent5f004e7c184ebd7f39762a66c8991e6ba4333b23 (diff)
downloadandroid_hardware_qcom_audio-38cfe6cec855c1f07775b8926d23e46d548f8c80.tar.gz
android_hardware_qcom_audio-38cfe6cec855c1f07775b8926d23e46d548f8c80.tar.bz2
android_hardware_qcom_audio-38cfe6cec855c1f07775b8926d23e46d548f8c80.zip
Snap for 5671249 from 5f004e7c184ebd7f39762a66c8991e6ba4333b23 to qt-qpr1-release
Change-Id: I302e9b384aad040724261d6d39e927efcef8b144
-rw-r--r--hal/audio_hw.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/hal/audio_hw.c b/hal/audio_hw.c
index 5d611c6b..34fafe7c 100644
--- a/hal/audio_hw.c
+++ b/hal/audio_hw.c
@@ -4107,7 +4107,7 @@ static int in_standby(struct audio_stream *stream)
lock_input_stream(in);
- if (!in->standby && in->is_st_session) {
+ if (!in->standby && (in->flags & AUDIO_INPUT_FLAG_HW_HOTWORD)) {
ALOGV("%s: sound trigger pcm stop lab", __func__);
audio_extn_sound_trigger_stop_lab(in);
in->standby = true;
@@ -4347,7 +4347,7 @@ static ssize_t in_read(struct audio_stream_in *stream, void *buffer,
const size_t frame_size = audio_stream_in_frame_size(stream);
const size_t frames = bytes / frame_size;
- if (in->is_st_session) {
+ if (in->flags & AUDIO_INPUT_FLAG_HW_HOTWORD) {
ALOGVV(" %s: reading on st session bytes=%zu", __func__, bytes);
/* Read from sound trigger HAL */
audio_extn_sound_trigger_read(in, buffer, bytes);
@@ -4460,7 +4460,7 @@ static int in_get_capture_position(const struct audio_stream_in *stream,
// on standby. Therefore, we may return an error even though the
// pcm stream is still opened.
if (in->standby) {
- ALOGE_IF(in->pcm != NULL && !in->is_st_session,
+ ALOGE_IF(in->pcm != NULL && !(in->flags & AUDIO_INPUT_FLAG_HW_HOTWORD),
"%s stream in standby but pcm not NULL for non ST session", __func__);
goto exit;
}
@@ -6077,6 +6077,9 @@ static int adev_open_input_stream(struct audio_hw_device *dev,
get sound trigger pcm if present */
audio_extn_sound_trigger_check_and_get_session(in);
+ if (in->is_st_session)
+ in->flags |= AUDIO_INPUT_FLAG_HW_HOTWORD;
+
lock_input_stream(in);
audio_extn_snd_mon_register_listener(in, in_snd_mon_cb);
pthread_mutex_lock(&adev->lock);