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>
After freeing up the memory assign null to the pointer
that had the address.
Change-Id: I242a936c434dc449ec9fd19b0c34e843c3cf0913
Signed-off-by: Manoj Kumar N D <quic_mnd@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
voice_map_cal_memory is already under
locked context of common_lock from fn
voc_register_vocproc_vol_table from where
it is invoked.
Remove locking the same lock again in
voice_map_cal_memory to avoid deadlock.
Change-Id: Ibd6c7169377418c7bda3310a0e422279fd4e7295
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
Send path to get the cal block in order to fetch
topology and app type.
Change-Id: I5ea2fe7da99f095c9bb31644bd65c0a2a6d0870f
Signed-off-by: Manoj Kumar N D <quic_mnd@quicinc.com>
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>
Sometimes, the return of msm_audio_ion_alloc is a
positive number not a negative number when audio ION
alloc failed. It will return the status of cmd_rsp
which maybe a positive number.
Change-Id: Ice90385f22c07fa2c9c72c8a31aeb3b8ee477756
Signed-off-by: Deru Wang <quic_deruwang@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>
When afe is inactive, it can cause afe_state to be negative and lead to timeout.
Ignore afe response in such scenario to avoid timeout.
Change-Id: I1191cbe40920bfdcb3ec7e8de76f9210923f40a2
Signed-off-by: ftong <quic_ftong@quicinc.com>
Defines mixer control for the paired rx and how the dai driver is starting/stopping the paired rx port.
Change-Id: Ie17f7de9d7a482ad30b219a9ba68066ee8d467df
Contains functions defined in the afe driver to store the paired rx information
in the afe driver and to start/stop the paired rx port.
Change-Id: I4ec863d9b04ec7f8f12abb5b66b417eeaa779ec8