Remove common mutex lock before invoking unmap physical
memory command to avoid deadlock issue between voice lock
and common lock in concurrency use cases.
Change-Id: Iaca089f4ff1b6da16e0e59939088fb59516362aa
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
MFC set param failed in DSP due to payload mismatch
and stereo echo reference doesn't work.
Channel type parameter in MFC config payload is an
array of uint16_t, but it is assumed as an array
of uint8_t while copying from device structure.
Fix this by copying the channel type one by one
instead of using memcpy.
CRs-Fixed: 2197468
Change-Id: I4b6959e8db56743ac98da75ddc3aa8f56964b4ca
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
Add support for mixer control to enable/disable
ecns module for voice call.
Change-Id: I085411c4a6394d27880f8055b3348c1eb5f2b6ff
Signed-off-by: Meghana Reddy Mula <mmula@codeaurora.org>
In case of voice_alloc_rtac_mem_map_table() failure no memory get
allocated for rtac but dma_buf pointer might get corrupted and may
point to some unmapped memory region. Since we are only doing NULL
pointer check for dma_buf in method is_rtac_memory_allocated() we
need to reset such pointer to NULL in failure case.
Change-Id: I5e81adad4e302620757375f87fa15344e07dccf8
Signed-off-by: Ajit Pandey <ajitp@codeaurora.org>
CVD version update is needed to support a new modem
feature. Add support for CVD version 2.4 in internal version
mapping table.
Change-Id: I26627e3c88b424acca8f85696dd58d7ce2e944d9
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
Add support for incall stereo capture for voice uplink
and downlink capture
Change-Id: Id23448990170b8215f547073608cd6a998d479ae
Signed-off-by: Arun Mirpuri <amirpuri@codeaurora.org>
Check buffer size in qdsp_cvs_callback before access in
ul_pkt.
Change-Id: Ic19994b46086709231656ec747d2df988b7a512f
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Check size of payload array before access in qdsp_cvp_callback.
Change-Id: Ic5ea6686a1a09df75ddd5e6fdcdfbd74efff83d8
Signed-off-by: Tanya Dixit <tdixit@codeaurora.org>
Check size of payload array before access in qdsp_mvm_callback.
Change-Id: I81d945f963cfb4a3cb26155700b82880d891ec5e
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Whenever a voice call starts or ends q6voice shall call
voice_MHI API to enable or disable MHI voting respectively.
Change-Id: Ia1125fb96c67ff6fec2242bc2b482ef7017dfb7d
Signed-off-by: Vikram Panduranga <vpandura@codeaurora.org>
Switch audio drivers to SPDX identifier on msm-4.19.
Change-Id: Ic3f0230a516db251b8d81e8a7e73dbc04d66fe1b
Signed-off-by: Meng Wang <mengw@codeaurora.org>
Add capability to receive notifications from voice service
when there is a change in mic break status during a voice call.
On receiving notification, send an uevent with mic status to userspace.
CRs-Fixed: 2211324
Change-Id: Ie55bd1490fd8cead7261b70169ae36eba95e4011
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Total size was incorrectly adjusted after determining
IID param size in SET_UI_PROPERTY. Fix total size with
correct APR packet and param sizes.
Change-Id: I5874b470811733e60b40cc240d4c0db995b30bac
Signed-off-by: Vikram Panduranga <vpandura@codeaurora.org>
Set topology info to q6core service in ADSP so that the
modules in a topology can be loaded before the usecase starts,
thus reducing usecase setup latency. The same topology is
unloaded before vocproc or copp is destroyed or replaced.
Change-Id: I5f8872130fb09f049e080c61edb8bb0b05e5e2de
Signed-off-by: Vikram Panduranga <vpandura@codeaurora.org>
Initialize variable before use in voice driver.
CRs-Fixed: 2209691
Change-Id: I84b51262b5c3cb12ea23372eb7c7109c6ff844b4
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
VSS_ICOMMON_RSP_GET_PARAM_V3 should be compared with opcode. Otherwise the
if condition would always be true. Correct the comparison for
VSS_ICOMMON_RSP_GET_PARAM_V3.
Change-Id: I204c8c71e06b13332fd5b418a40b10618e19a901
Signed-off-by: Meng Wang <mwang@codeaurora.org>
Add support to set and get rtac params with
Instance ID support. Maintain support for non
Instance ID set and get param structures as well.
Use common pack and set param functions to set and
get parameters to DSP instead of handling them at an
individual module level.
CRs-Fixed: 2151551
Change-Id: Ic96e83477e72dc5ffa4d87a1e98c34814bbd0b8d
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Add support to set and get voice module params with
Instance ID support. Maintain support for non
Instance ID set and get param structures as well.
Use common pack and set param functions to set and
get parameters to DSP instead of handling them at an
individual module level.
CRs-Fixed: 2151551
Change-Id: I045e27710d69304f234ace1ff6c80afdd4a4041c
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Between Linux-4.9 and Linux-4.14, upstream has updated the
ION APIs significantly to make ION ready to bring out of
staging folder. This has changed the way ION and dma_buf
APIs used to work together for allocating, mapping and
deallocating ION buffers.
Update MSM Audio ION wrapper functions used by audio drivers
to reflect these ION API changes as per upstream ION.
Change-Id: I63097e147a397aa3a538f69ac88b6fb10871c3dc
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Assign default channel mapping to three channel voice Tx
devices when the topology specific info cal data is NULL.
Change-Id: Ic9d572edc1d7de07a2bd5e11d82f875368c35854
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
Based on where the code is synced the driver should allow
both static and dynamic linked compilation.
Also remove __exit for modules loaded from another common
init/exit functions.
Change-Id: Ib58f152002aba3af4446f9bbd9b82c279212bd0a
Signed-off-by: Asish Bhattacharya <asishb@codeaurora.org>
Switch to DLKM for all audio kernel modules.
Change-Id: I6a96023a21f655f873531af9ace81f2b01eb0f58
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Add support to set number of channels and channel mapping to DSP
as per the info received from ACDB files along with topology
for a device in voice usecases instead of reading from
backend configuration. When topology specific channel info is
not supported, send the default no of channels and
channel mapping as per backend to support backward compatibility.
CRs-Fixed: 2110934
Change-Id: Iad512474fc25c906d97513f6648cd8ba6244eda1
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
Allocate contiguous memory for version information instead of splitting
it across the stack and heap to centralize memory and improve
readability.
CRs-Fixed: 2104576
Signed-off-by: Siena Richard <sienar@codeaurora.org>
Change-Id: Id7b5942522da6312da57bfef3d3c0b55934fe1d7
In Stereo EC reference, mute is observed in VPRx output
of 2nd channel when only speaker device uses custom MFC topology.
When handset and speaker use the same custom topology, issue is not
observed. Because when DSP VPRx module creates the
custom topology with handset configuration (1 channel and
center channel mapping) and device switch to speaker occurs
MFC conversion from center to left and right channels is successful.
But in case where handset uses default topology, when device
switch to speaker occurs, VPRx creates the custom topology
with speaker configuration(2 channels and left mapping). So,
when MFC config is received, only left->left mapping is done which
leads to mute in right channel.
Fix is to send the channel mixer configuration to MFC module
so that both left->left and left->right mapping is done.
CRs-Fixed: 2102374
Change-Id: If9be09866615e6623e78f48b9841eb068c825992
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
Assign channel mapping for Quad Mic voice use case
in channel info command during voice setup
as DSP requires channel mapping to be sent with
default values.
CRs-Fixed: 2097341
Change-Id: I661f845c26f8639e5e8dffa430ecc8cb3b3e8780
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
Propagate the changes based on latest snapshot
for audio kernel source tree at below cutoff of
kernel msm-4.9 -
(040750bfa78 -
"Revert "ARM: dts: msm: Add DT node for aop-qmp
clock controller on SDM845 v2"")
CRs-Fixed: 2104096
Change-Id: I0927c40b3a188dbf892e7ec4c1c7810953724929
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Propagate the changes based on latest snapshot
for audio kernel source tree at below cutoff of
kernel msm-4.9 -
(aed56b2df75 - "drm/msm/sde: update te vsync enable sequence change")
Change-Id: I7ed5102146986b81e5cb9ca55432360b3549b60c
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>