Headset insertion/removal is not detected sometime due to
fifo read failure due to swr underflow. This is because if
headset sva is enabled, during clk switch swr force stop
happens and if mbhc has already taken pm vote for 3sec
further mbhc reads/writes will fail. If swr is in clk switch
mode then call swrm runtime_resume during reads/writes
to resolve issue.
Change-Id: I0d65869bd1c645bbf7ded9c0265f8d7de0dc624b
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Remove reset of rx ec ref channel for adm after using,
if the channel value is not changed, user space won't
set it to driver again, then causing adm opening failed.
When WSA is disabled, WSA related widgets is not registered and it
causes soundcard registeration fail. Add stub fe for wsa capture to
avoid soundcard registeration failure.
Change-Id: I282d843d02544aaf2f2b646aba4fca731fc6f47e
Signed-off-by: Meng Wang <mengw@codeaurora.org>
Retry for soundwire slave enumeration during bootup before
EPROBE_DEFER to avoid soundcard enumeration failures.
Change-Id: I083ec76fc84a2b367f93a2dc166a1419a75ff8b4
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Add void param in function definition to
avoid compilation errors when strict prototypes
flag is defined.
Change-Id: I4515c730139fff18638805cd70db24ec1886f127
For Source Tracking adm_get_param, param_hdr (struct param_hdr_v3) size
being sent was different as param_hdr(struct param_hdr_v1)size used for
offset of virtual memory to copy the param data in out-band case get_param.
Change-Id: I01dd4f704cc5b6994f1203a0e28199a6936cba7f
Signed-off-by: Avinash Chandra <avicha@codeaurora.org>
Changes to support silent restart of adsp subsys
based on the apr callback when packet transfer
to adsp timesout.
Change-Id: Icedb76907a441792d1953a08dd071791e5b08706
Signed-off-by: Soumya Managoli <smanag@codeaurora.org>
Fix out of bound memory access in q6afe_load_avcs_modules()
for afe_avcs_payload_port_mapping structure.
Change-Id: Ibe0e90e4fbedc2cf6a88abd9f3845643020a904a
Add new APIs to enable dynamic load and unload of BT
modules before afe_port_start and afe_close.
Change-Id: I74da9a49aac754d4557c7206155de65cf9b6bdaf
Signed-off-by: Harshal Ahire <hahire@codeaurora.org>
Add support for DSD in MI2S interface and corresponding api updates
from ADSP.
Change-Id: I494205763fa429f95e43497ed5b8f91332f5a2a3
Signed-off-by: Sanjana B <sanjb@codeaurora.org>
With multicodec approach, codec widgets are added much earlier during sound
card registration than aux codec approach. The connections between bolero and wcd938x
are done via device tree at a later point. DAPM does power checkup for codec widgets
before the codec-codec path is connected. This results in wcd938x dapm inputs/output
to be considered as endpoints, which results in playback/record failure once after
bootup. Hence, add dummy output/input widgets to wcd938x dapm inputs/output which are not
codec endpoints.
Change-Id: I5ab4839e9b76adba24c9254ae56dc784b4448af7
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Add interface to register callback with adsp loader client.
When adsp is stuck and does not respond for apr_send_pkt,
resulting in continuous EAGAIN error, trigger this
callback to enable adsp subsystem restart.
Change-Id: Ib59cfdfba3313581d6612b872a2b7f1e19f8a76d
Signed-off-by: Soumya Managoli <smanag@codeaurora.org>
To set correct swr clk rate in concurrency,
use WCD ADC modes as status mask bit to confirm
ADC paths active and control set clock rate.
Change-Id: Id3401d6ed59bd617e0751e7c704268346b36dac4
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
In case of two concurrent active rx proxy ports, add
separate callback data to handle proxy reading.
Change-Id: I4de631b9cfead777c970103a79578964e5950eb9
Signed-off-by: Zhou Song <zhous@codeaurora.org>
Restore change to retain audio_hm voting and
ensure AOP hang issue not seen by masking interrupt
wakeup of swr pinctrl pins.
Change-Id: I51bf36d6d6b0999abf10a4bc94cce900d1adf1d5
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
For island SVA usecase, ensure register for
AFE in-band interrupt.
Change-Id: I24e6dfadfaa38919114000fb09a7906264020cd9
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Only send codec dma data alignment cmd when it's set.
Change-Id: I413c28bc01b4f49aa0291b868852dfb5835add8e
Signed-off-by: Meng Wang <mengw@codeaurora.org>
Config variables are no longer supported and are replaced by
audio effects config in Lahaina.
Change-Id: Ic817791a470a7e4b0fac280115edf849fecc91c7
Signed-off-by: Akhil Karuturi <akarutur@codeaurora.org>
In register show function, when snprintf returns a negative value
out of bounds access occurs while copying the data to user.
Add return value check on snprintf before copy_to_user
to fix this and add sizeof() for tmp_buff to avoid buffer
overflow.
Change-Id: I15f1add37987d2176a165669d7a5b40bd576004c
Signed-off-by: Prasad Kumpatla <nkumpat@codeaurora.org>