In afe_get_cal_sp_th_vi_param and afe_set_cal_sp_th_vi_cfg
functions, data size check is not present which might lead to
out of bounds access. Add size checks to fix the same.
Change-Id: I99eca6065e6f5a050527f1bfce2bfcba28123b53
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
Add MI2S/TDM AFE senary port IDs for Kona target.
Change-Id: I8dafa4516c31040aad0bca30cfdc9acbdf460bf1
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
IID support is set from user space during boot up
which can come in parallel with AFE set clock requests
due to which param payload is set in difference with
the actual set param command as per instance id support.
Change-Id: I07e45fda0943cac814f25c16da930dfae5d209a6
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
Add support for speech codec which is similar to a2dp aptx adaptive.
Change-Id: Ibfbcf086f009fdb561e26aaf92cefc92f1bd16ca
Signed-off-by: Zhou Song <zhous@codeaurora.org>
Updates to send VAD enable or disable to AFE port.
Send VAD and island configuration based on the ports
on which these features are supported in Vipertooth
machine.
Change-Id: Ib3e6d46fed3bf9e822f350c9ec0dc629cd82547e
Signed-off-by: Mangesh Kunchamwar <mangeshk@codeaurora.org>
Support group tdm multi lane configuration for TDM interface.
With valid lane mask tdm interface support delivery audio channels
through different data lines.
Change-Id: I63e8ba1106b89c6bcaca0a8359a1def696c334ad
Signed-off-by: Cong Tang <congt@codeaurora.org>
AFE callback payload response for param id FFV_DOA_TRACKING_MONITOR
is not handled properly. This is resulting in 2sec
of wait event timeout delay. Updating the state event and
status event based on the payload response. This decreases
hal load time by 2sec.
Change-Id: If960ee14e264b3fe444463b47878d29aaee5e63f
Signed-off-by: Surendar Karka <skarka@codeaurora.org>
Check if payload data is big enough before accessing
the data in it.
Change-Id: I939f205a8cebf6ef4859f81fae5429bca013d540
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Make sure to get apr handle before sending a packet
so that it does not end up with no handle to send
the apr packet.
Change-Id: Iaaebee3ddc6c83896e4cb9dc8149d310fc7d67f1
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Trigger xt logging getparam at every playback close
and store data. When app queries sys/class node, return
stored values and reset to 0 for some params as per
app requirement.
Change-Id: Ice1a3e9a7e03062390f1c36184a971635e55d450
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Implement get param for AFE_PARAM_ID_SP_RX_TMAX_XMAX_LOGGING
in order to get excursion params from DSP.
Change-Id: I5129938c51c6f6ede9d4703d13be60d04d26f5e3
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
With speaker protection in v-validation mode, speaker
samples can be tested in early factory mode. Add
support for v-validation feature from driver.
Change-Id: I92493d6d2784cf4dd58021746bffe01180f89d23
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
When ADSP is in power collapse or island state, it would fail
to access LPASS codec register.Vote for LPASS core to avoid
LPASS power collapse with pmruntime approach while accessing
LPASS registers & TLMM.
Change-Id: I74d037e499fb6f1245b9a1bd1b0a77200608c27b
Signed-off-by: Mangesh Kunchamwar <mangeshk@codeaurora.org>
Token from DSP might be invalid for array index. Validate the token
before being used as array index.
Change-Id: I9f47e1328d75d9f9acf7e85ddb452019b6eced0a
Signed-off-by: Xiaojun Sang <xsang@codeaurora.org>
Add support for Aptx Adaptive decoder. Introduce flag
to indicate ABR feedback decoder configuration to
differentiate from regular decoder configuration.
Change-Id: I272e0a9572a56e878f7ad1385514b3be7010145a
Signed-off-by: Chaithanya Krishna Bacharaju <chaithan@codeaurora.org>
Add needed exports in q6afe. These are
needed for sdxprairie drivers where LPASS
provides the clock.
Change-Id: Icd8256153523c8827ffd65eda1152ef9ad355119
Signed-off-by: Josh Kirsch <jkirsch@codeaurora.org>
VA macro on Kona has three TX codec DMA interface. The
current AFE driver only supports two codec DMA interface.
Add support to enable the third one in AFE driver.
Change-Id: Ie0f6241ef37bc03ad9adb1c4fe82f82468caec25
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
BT sink devices have a limitation on the packet sizes
they can receive and handle from BT sources. AAC encoder
can produce output frames which can vary in size based on
content being encoded. If frame size exceeds MTU size of
BT sink device, it will lead to incorrect decoding of
frames in BT sink.
Add a frame configuration parameter (MTU/Peak bitrate)
for AAC encoder to solve this problem.
Change-Id: Ia7795049e982400b0b3657b0b3a8990fc6920e38
Signed-off-by: Aniket Kumar Lata <alata@codeaurora.org>
In SSR/PDR, return ENETRESET errno to
propagate this failure to userspace. After
audio HAL receives ENETRESET, it stops retry
for pcm_open continuously. Rate limit the logs
when apr send packet fails during PDR/SSR
usecases to avoid watchdog timeouts.
Change-Id: I03a80aef6ffedb4f15f953fff5213d6a3c9efc4b
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Move the return value to within the error check
condition to avoid returning error for valid
scenarios too.
Change-Id: I718786d9eb3c779a85da3a4cb3929806692f5424
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Add support to get DOA tracking monitor data.
This is required to support SVA LED display feature with
FFECNS/FFNS enabled.
Change-Id: I7e39c2f3998fcc3f9ed0767c0090f862e1ba7539
Signed-off-by: Chaithanya Krishna Bacharaju <chaithan@codeaurora.org>
Add dai driver and routing driver changes for
afe loopback BE. This BE is used to capture
EC reference data.
Change-Id: Ia57f335bde5f8a47de0030fbf1cdb784c8821e17
Signed-off-by: Surendar Karka <skarka@codeaurora.org>
Cleanup task_struct related implementation in
AFE driver as it is not used anymore and
causes invalid pointer access in stability tests.
Change-Id: I97ad810f9389338af85c7cea3213432917a21106
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
Add support to enable mono mode when one TWS+ earbud is
connected. Change the encoder config when device switches from two
earbuds to single earbud.
CRs-Fixed: 2341876
Change-Id: I880aa6a2767d88e99be2d80afff0e5fbec94b8a4
Signed-off-by: Manisha Agarwal <maniagar@codeaurora.org>
Switch audio drivers to SPDX identifier on msm-4.19.
Change-Id: Ic3f0230a516db251b8d81e8a7e73dbc04d66fe1b
Signed-off-by: Meng Wang <mengw@codeaurora.org>
Update SBC sample frequency and number of channels
from IPC library to set AFE port accordingly.
Change-Id: Ibca385b0fc0ba4c3122053559b1116bd4c31336d
Signed-off-by: Florian Pfister <fpfister@codeaurora.org>
Some USB headsets take more than 1 second to respond
for afe port start command so increase the timeout value
to support playback on slow responsive USB headsets.
Change-Id: I76c43bafe3c9e1e2d8a4a23059053db6bfc0188b
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
Add different media format support in AFE decoder.
Change-Id: Icdc3884882c34236f5ab02355dfbabdd2a1becd2
Signed-off-by: Florian Pfister <fpfister@codeaurora.org>
Signed-off-by: Surendar Karka <skarka@codeaurora.org>
Lock sequence for afe_alloc_cal does not comply with others. To
avoid deadlock, move afe_cmd_lock to the top caller in AFE.
Change-Id: I4ce03034c642c8b5e7e9e5e2ff4c73644980484b
Signed-off-by: Xiaojun Sang <xsang@codeaurora.org>
Send sample rate for port media type from APTX AD
config before AFE port start.
Change-Id: I3410428661ad4162539f437bb391c33a60ea1852
Signed-off-by: Aniket Kumar Lata <alata@codeaurora.org>
Send VAD configuration during TDM port start.
Change-Id: I30b45b066b2ca5fdf49cd74d87d95f75566661c9
Signed-off-by: Mangesh Kunchamwar <mangeshk@codeaurora.org>