Add support for DSD in MI2S interface and corresponding api updates
from ADSP.
Change-Id: I494205763fa429f95e43497ed5b8f91332f5a2a3
Signed-off-by: Sanjana B <sanjb@codeaurora.org>
Fix the compilation issues in audio drivers when CONFIG_DEBUG_FS
is disabled.
Change-Id: I6eeb2b36b054ba30431f7b045c182888997dc331
Signed-off-by: Prakruthi Deepak Heragu <pheragu@codeaurora.org>
Use EOS V2 to avoid time out for EOS when afe port
is closed before EOS
Change-Id: I3be0aa33384d2015354b8f9a307f3e0cb200c040
Signed-off-by: Satish Babu Patakokila <sbpata@codeaurora.org>
Check the audio client and apr before retrieving the
service_id and avoid the race condition b/w q6asm_session_free
and get_service_id calls with mutex lock.
Change-Id: I05c5fb872f866c79c909123b595df345da828967
Signed-off-by: Prasad Kumpatla <nkumpat@codeaurora.org>
When CPU buffer is not available, continuous error
log prints leads to excessive logging. Make the error
as debug log to avoid this.
Change-Id: Ic26006b4975fbe3d5467203d145a517c0067c296
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
support for AMR codec in compress driver path.
Change-Id: Ife1d82caddf87a904f8c8b0402fc79f05a8289d1
Signed-off-by: Asish Bhattacharya <asishb@codeaurora.org>
Add support to query presentation position from DSP
in system time domain.
Change-Id: I42b4d234ddc256f93c01defbe2c74872a2a2cf3e
Signed-off-by: Surendar Karka <skarka@codeaurora.org>
The read compressed in IEC61937 mode doesn't unpack data to frames, but
data flow still requires frames_per_buf to be set to nonzero value.
Change-Id: Idb09219c57d7790cb90df62c97baf3ef0e9d8a2f
Signed-off-by: Ralf Herz <rherz@codeaurora.org>
Define channel map for channel count 14 for adm and asm to
support capture usecases for this configuration.
Change-Id: Ieb43dafd05f88bf34fa512fd7268258163e9ac92
Signed-off-by: Chaithanya Krishna Bacharaju <chaithan@codeaurora.org>
Hard coded stream id fails rtac call for subsequential gapless stream
which uses stream id other than default value. To get/set rtac for
gapless session successfully, we need to update the stream_id as a part
of asm apr header with correct value populated from asm session table.
Change-Id: If4afd73b4cf11bf91730a58ae6dff03efb04519d
Signed-off-by: Weiyin Jiang <wjiang@codeaurora.org>
Add asm channel map support for 10channels to support
10channel recording usecase.
Change-Id: Ic939eabed893e9e56b17e62bc5100f2d6d51732f
Signed-off-by: Chaithanya Krishna Bacharaju <chaithan@codeaurora.org>
Replace clock reference from wall clock to MONOTONIC.
This is to avoid getting impacted when system time is
set backwards or forwards (either through network or manually).
Change-Id: I98625b033f689002c9334633cf3944608d5a77d3
Signed-off-by: Md Mansoor Ahmed <mansoor@codeaurora.org>
During SSR avoid printing some errors which could lead
to excessive logging.
Change-Id: I5f9e7e5f32bc3de87996838048514e16d59c97a6
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
Due to redundant payload checks, ASM
get param requests in RTAC mode fail with timeout
errors. Fix this by removing the redundant
payload checks.
CRs-Fixed: 2372302
Change-Id: If08ec942f3530e132b5980da579ea1766d21c52b
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Excessive logging by pr_err() could cause audio thread to stuck
in the printing session which results PD down notification timeout.
This eventually can cause ADSP PDR failure. Fix this issue by using
pr_err_ratelimited and dev_err_ratelimited to limit the number of
error messages during the ADSP PDR.
Change-Id: I68b617fef53ebd03ba79fd919bffd8c35e6eb048
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
Check the size of ADSP payload before accessing it.
Validate buffer index obtained from ADSP token before using it.
CRs-Fixed: 2372302
Change-Id: I3f5e1b6f515935a10a8c59c324452be0a71f9473
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Channel_mapping array size varies for different commands.
Add check for num_channels before calling q6asm_map_channels.
Change-Id: Iccbcfe82f716fc0ffe0a26b1779dcaa1c3cb805b
Signed-off-by: Rohit kumar <rohitkr@codeaurora.org>
Handle media format update events from ADSP in case of DSP loopback.
Change-Id: I4004759cc77a05f46106d359417f97f0326af19d
Signed-off-by: Ralf Herz <rherz@codeaurora.org>
Payload size is not checked before payload access. Check size
to avoid out-of-boundary memory access.
Change-Id: Iaa39ee4ea5489bb5579e7b7d5dfada12d88c5809
Signed-off-by: Xiaojun Sang <xsang@codeaurora.org>
Copyright year 2018 for q6afecal-hwdep and third party copyright
marking for q6asm are removed during updating file headers.
Add them back.
Change-Id: I0341116ca0cf82be8c3876534b98ad2c376b3531
Signed-off-by: Meng Wang <mengw@codeaurora.org>
Enhance Channel Mixer control for MultiMedia Frontends to
get custom channel mixer coefficients from userspace and
use it during device routings to control stream to device
channel mappings.
Change-Id: Ifedac25de5ae6bad1092b66ec405bba66a80f608
Signed-off-by: Cong Tang <congt@codeaurora.org>
Signed-off-by: Dhananjay Kumar <dhakumar@codeaurora.org>
Reduce the amount of time driver waits to get a response from ADSP.
Current wait time in some cases is 5 secconds, which might cause
user space crashes in Android P. So reducing the timeout to
1 second.
CRs-Fixed: 2318751
Change-Id: I6b6789aa5b408659dd57f8f6b017df52d14b28aa
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Switch audio drivers to SPDX identifier on msm-4.19.
Change-Id: Ic3f0230a516db251b8d81e8a7e73dbc04d66fe1b
Signed-off-by: Meng Wang <mengw@codeaurora.org>
ASM supports now up to 32 channels. Extend
the ASM Channel map structures from 8 to 32
channels.
Change-Id: I958d15910785cf0c5707dec432b4dd3e272c3dc1
Signed-off-by: Dieter Luecking <dieterl@codeaurora.org>
Signed-off-by: Mangesh Kunchamwar <mangeshk@codeaurora.org>
Split the muli-check condition into two separate check conditions.
Suppress the logs for stale condition to debug.
CRs-Fixed: 2307741
Change-Id: I984a2ea7928de052e993e77db807df83109ab423
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Rate limit dsp read/write error logs to reduce log
prints during SSR scenario for read/write failures.
Change-Id: I031be5ebd39bdd11dc8e1eb92c77ed782f1dc149
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Initialize flag variables before use in spinlocks.
CRs-Fixed: 2257317
Change-Id: I8b5973c1dfe3c7266a71d4e8ef4d5884b685ae5d
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
It is possible that audio session free and param set happens
simultaneously. Audio client might be freed while param set
is doing wait_event_timeout.
Use session lock to make sure client_free happens after param set.
Change-Id: I0947c309c8e445fa2e220680e329d88bd5fe2418
Signed-off-by: Xiaojun Sang <xsang@codeaurora.org>
In noirq push pull mode channel map needs to be set during
ASM open shared io stream. Add support for no irq driver to
set channel map during ASM shared io stream open.
CRs-Fixed: 2267809
Change-Id: Ic1abfe60bb54b6529fbb4cf999e50196befaba46
Signed-off-by: Surendar Karka <skarka@codeaurora.org>
Add check for integer overflow of user
supplied data for ADSP stream command.
CRs-Fixed: 2173850
Change-Id: Idde5665c770398629b1b0cfa2c18d3c023b0f9a2
Signed-off-by: Mangesh Kunchamwar <mangeshk@codeaurora.org>
Support two SPDIF input and two SPDIF output interfaces in AFE.
Support 61937 compressed capture.
Change-Id: Ie71434eb53be798567a6240e0f4bf171aee305b8
Signed-off-by: Ralf Herz <rherz@codeaurora.org>