summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorHan Lu <hanlu@codeaurora.org>2018-01-09 20:24:47 +0800
committerGerrit - the friendly Code Review server <code-review@localhost>2018-06-04 00:32:36 -0700
commit53c8faf4dc088ab4da0021750047e90023ce3284 (patch)
tree10fe55704f8d9fbb68dfc1f8a5f974bd0a27989f /include
parentfd95dadf54bf08e910a4cad0bbce8d25e8813429 (diff)
q6asm: retry asm open in case of session id conflict
The ADSP asm session ids are managed by the kernel driver. It's all right for native use cases. But for virtualization use cases, there's no way to synchronize the session ids' status among virtual machines. Playing back in one virtual machine is probably failed, because the session id may had been occupied by a use case in another virtual machine. The patch allowed audio playback stream to try all available session ids in case of session id conflict error, to support concurrent playback from multiple virtual machines. Change-Id: If98d05898cec3f05d80c750ec8a014add3b1f34c Signed-off-by: Han Lu <hanlu@codeaurora.org>
Diffstat (limited to 'include')
-rw-r--r--include/sound/q6asm-v2.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/include/sound/q6asm-v2.h b/include/sound/q6asm-v2.h
index 9df3e77da05b..3523fac586ce 100644
--- a/include/sound/q6asm-v2.h
+++ b/include/sound/q6asm-v2.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2012-2017, The Linux Foundation. All rights reserved.
+/* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
@@ -309,6 +309,10 @@ int q6asm_open_write_v4(struct audio_client *ac, uint32_t format,
int q6asm_open_write_v5(struct audio_client *ac, uint32_t format,
uint16_t bits_per_sample);
+
+int q6asm_open_write_with_retry(struct audio_client *ac, uint32_t format,
+ uint16_t bits_per_sample);
+
int q6asm_stream_open_write_v2(struct audio_client *ac, uint32_t format,
uint16_t bits_per_sample, int32_t stream_id,
bool is_gapless_mode);