There is no error check for case when hpcm_start
is called for the same RX or TX tap points multiple times.
This can result in OOB access of struct vss_ivpcm_tap_point.
Handle this scenario with appropriate no_of_tp check.
Change-Id: Ib384d21c9bf372f3e5d78f64b5c056e836728399
Signed-off-by: Soumya Managoli <quic_c_smanag@quicinc.com>
Due to incorrect check for buffer size calculation during partial buffer size check,
which is part of code for gapless playback support in GKI mode,
partial buffers are missed from sending to DSP causing buffer handling issues.
Change-Id: Ic6f5a3ce6958ddc94dc7bb7e92ebb778aa13cb64
Signed-off-by: Shalini Manjunatha <quic_c_shalma@quicinc.com>
Mark the used cal block as stale so that it is not reused.
Change-Id: I142d21d6d32a1b5ad24c3a2708b1df023d70947e
Signed-off-by: Manoj Kumar N D <quic_mnd@quicinc.com>
Hdmi-in used QUAD-I2S to input, need configure I2S
to slave mode.
Change-Id: I1d27d51c766538bb8f61cd74c5dcb6cc18954e81
Signed-off-by: ronghuiz <quic_ronghuiz@quicinc.com>
Check if pm_qos_req is active before removal.
Change-Id: I0076a73ffa6310dbb4cb207ca7a651aa1d3fdf04
Signed-off-by: Soumya Managoli <quic_c_smanag@quicinc.com>
Current logic copies user buf size of data
from the avail dsp buf at a given offset.
If this offset returned from DSP in READ_DONE event
goes out of bounds or is corrupted, then it can lead to
out of bounds DSP buffer access, resulting in memory fault.
Fix is to add check for this buf offset, if it is within
the buf size range.
Change-Id: I7753cc6db394704dbb959477150141d42b836bef
Signed-off-by: Soumya Managoli <quic_c_smanag@quicinc.com>
Channel mixer has to sent while the sound devices are rerouted
as capture/playback prepare will not be called during rerouting.
Change-Id: I8473d89c7aff9f5f2a1dd2f3f4a8fa5d387b2429
Signed-off-by: Manoj Kumar N D <quic_mnd@quicinc.com>
When wcd is disabled, due to incorrect swr port map
being set, crash is seen. Hence set correct default
port map for SWR through corresponding bolero macro.
Change-Id: Ib17642832f98fb47c9e571cf7763f38a191bdfba
Signed-off-by: Shalini Manjunatha <quic_c_shalma@quicinc.com>
Whenever MBHC is disabled through kernel config file,
particular vaiable of mbhc is not guarded for NULL
pointer check causing kernel panic,
Hence add NULL check for that pointer variable.
Change-Id: Iae4950ceb076239a130b4f033cb2f08cd65a92a9
Signed-off-by: Shalini Manjunatha <quic_c_shalma@quicinc.com>
Enable the mclk after the ssr for audio bring up in 6155.
Change-Id: I87d5bb2d16a24fd9618eae08e4be75f116ae1a5b
Signed-off-by: Manoj Kumar N D <quic_mnd@quicinc.com>
Added support for "ADM_CMD_REGISTER_EVENT" and "ADM_PP_EVENT"
events.
Signed-off-by: Srinivasa Reddy M N <quic_c_mullan@quicinc.com>
Change-Id: I80d8dc6d9fccdac67ea616d19415aa2133a3f370
Amic2 recording is failing due to missing of mixer controls.
Change is to add support of ADC and DMIC control for swr master
channel map.
Change-Id: I0377ec84a49d2eaa390872a29e2d8cf8909794b1
Signed-off-by: Hari Krishna Chowdary Yennana <quic_hyennnan@quicinc.com>
Observed audio capture has no data after upgrade to 5.4 kernel
due to change in dapm power up sequence in 5.4 kernel.
Modified tavil TX routes and dapm widgets to
meet the recent kenrel dapm power up sequence.
Change-Id: I15965a4f221b396e670a5b2888a60557c302db51
Signed-off-by: Vijay Kumar Maddula <quic_vmaddula@quicinc.com>
Observed audio playback mute after upgrade to 5.4 kernel
due to change in dapm power up sequence in 5.4 kernel.
Modified tavil RX routes and dapm widgets to
meet the recent kenrel dapm power up sequence.
Change-Id: I24576f342c43e586ed9b55eeab2510c59c70e33d
Signed-off-by: Vijay Kumar Maddula <quic_vmaddula@quicinc.com>
App Type Gain command does not work due to max value
Change-Id: I27a7e4cf22e6b53650e1b51af65c7aadafa064dc
Signed-off-by: ftong <quic_ftong@quicinc.com>
Mutexes are initialized, but not destroyed, add destruction
in exit routines.
Change-Id: Ia45c604141f4f03403a765e0d10ff0b86b25885e
Signed-off-by: ftong <quic_ftong@quicinc.com>
In automotive hypervisor SSR case, csd2 need a while to handle resource,
hence receiving virtual SSR event doesn't mean PVM is ready for audio usecase.
AudioReach should wait for more precise events from PVM csd2.
Expose an ioctl node for updating sndcard status via gsl virtualization.
Change-Id: Ia5d1110dea970070706937c3bf5e42e1ccb1942f
Since quin & tert tdm fsync has harware conflict at talos,
add kcontrol for audiod use.
Change-Id: Ic42dec3144a9b3a8def14b14081cb9562291ae09
Signed-off-by: Jing Wang <quic_jingwa@quicinc.com>
change pr_err to pr_debug. Can't find device node
mclk_gpio_phandle[i](it equals "qcom,internal-mclk1-gpios")
in gpio device_tree dts file, so it needs to change this log
to pr_debug, it's not an error.
Change-Id: I82e58222e27b3a97209c52e8e569a0257744cf22
Signed-off-by: Xuewen Liu <quic_xuewliu@quicinc.com>
1) Doing SRC with MFC when FE and BE SampleRates are different.
MFC module is expected to add as fist module in COPP and output
SR of MFC is configured same as app_type SR.
2) Adding MFC module V2 version details to system.
Change-Id: I7c03fa28ec32892645ead9baf59eb927ca3e4891
dyn mclk support enable/disable in afe_set_lpass_clock_v2
Change-Id: Idb793961135ddc2bcdefe2c8367abce93a4ce164
Signed-off-by: Jing Wang <quic_jingwa@quicinc.com>
Defines mixer control for the paired rx and how the dai driver is starting/stopping the paired rx port.
Change-Id: Ie17f7de9d7a482ad30b219a9ba68066ee8d467df
HS_IF0_TDM_RX_0_DUMMY, HS_IF1_TDM_RX_0_DUMMY and HS_IF2_TDM_RX_0_DUMMY
are for playback instead of capture.
Change-Id: Icb4ccaacb3c6904b9591cada0905250a2b67cbef
Signed-off-by: Hugh Guan <quic_hhguan@quicinc.com>
Static loopback is created between QUIN_TDM_RX_0 to Tx session.
Tx session is created with quin_tdm_tx_7 dummy port.
Change-Id: Ic634b47d1d7f80a10c6d2bc341a6d3ca8eae34c1