Update the EAR and LO power up and down sequences to
fix CnP issues in rouleur codec.
Change-Id: I7e6d1cc82e9c1358b336c32b1befb7eb1dd9b552
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
Make dev_up true before giving 500 ms delay in case of AATC
variant during BOLERO_WCD_EVT_SSR_UP event.
Change-Id: Ie8306c92a80df69f087f055d425b22f48f319873
Signed-off-by: Faiz Nabi Kuchay <fkuchay@codeaurora.org>
Add notification from wcd938x to sound wire dmics
during SSR. Remove device down from dev ops to avoid
deadlock scenarios.
Change-Id: Ifdcbebb748c10deb89ad51ada1a8ce1cf33f2462
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Aux cable is detected as unsupported sometimes due to it being
detected as cross conn. Increase hph cross conn threshold to 350mV
so that it detects fine.
Change-Id: I87e4bd36f80d7cd62e06c76acf9c9d06bb6f148a
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Glitch is observed during amic record due to improper
sequence being followed. Reduce delay between toggle
of hpf gate to depending on sample rate to resolve glitch.
Change-Id: I8d9810dbc00264662f24532be9338198e6d7316d
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Remove cancel_delayed_work_sync in swr_down,to avoid race condition
between skr_pa_event POST_PMD and swr_down.we are taking care of
schedule_delayed_work and cancel_delayed_work_sync in PMU and PMD.
Change-Id: I4f43ffc354ec930dabd7c4a8b2382f6064a24653
Signed-off-by: Prasad Kumpatla <nkumpat@codeaurora.org>
This reverts commit d02c7efb35.
and commit 61f235e5bd to avoid AOP
related issues.
Change-Id: I0b8b44bc5cca6bef6bc18c228f08a9c585c79c1c
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Enable ADC Mode and tx channel cfg as part of enable_adc.
This should be enabled before enabling bolero dec so as
to reduce glitch or saturation for headset.
Change-Id: I94045d0c3b7b96744afb9e6a9a3eecf0abc5a55f
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
During SSR, when usbc analog device is disconnected, the
respective disconnect interrupt is not handled and hence userspace
is not notified. When ADSP recovers, fsa driver sends a disconnect
notification. So handle device disconnect and notify jack/userspace
through this notification.
Change-Id: Ic695c2267c9289f9528d50202938ec09f634de8a
Signed-off-by: Vignesh Kulothungan <vigneshk@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>
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>
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>
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>
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>
Add ignore suspend for dapm widgets to avoid waking up the
system during power collapse.
Change-Id: I4eec9785f2e722d1fbcbf26c2635af9825b30115
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Add dapm ignore suspend for playback and capture DAIs to
avoid wakeup during power collapse.
Change-Id: If023597542423253a565dcf0f13ee9f08b357b93
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Update interrupt handling on WSA883x driver to avoid fake
interrupts during power collapse.
Change-Id: I3128e2c2d9bf84f90f472a03d2b23ca1d3b70838
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Disable wsa swr gpio as wakeup capable to avoid waking up system
during power collapse.
Change-Id: I54d769d63c9e7c13d2920f038c64353a92556cfe
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Add delay in post ssr to eliminate playback pause on euro usbc headset.
Post ssr, headset is detected as headphone as HPH PA gets turned ON
before the completion of wcd_correct_swch_plug workqueue in MBHC.
Change-Id: Ib0334b37aa12b7e7371146b26eb3a1f4484656a3
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
HPH PA pull down control is set to force ON instead of auto
due of which saturation/noise is observed in headset
playback at highest volumes. Set pull down control
to Auto to fix this issue.
Change-Id: I465588f46b04bbb32d84f76b8b5bedd2ef21bd2a
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
When current source mode is enabled, comparator auto
zeroing should be turned ON by HW. As rouleur codec HW
doesn't do this automatically, add this support
in SW to set the auto zero enable before FSM enable
and reset to auto once FSM is enabled.
Disable surge protection before ADC measurements
and change HPHL and HPHR thresholds while
identifying cross connection for proper
accessory identification.
Change-Id: Ib775de0f0bdb6c655a3c0eb4775276acfbca1e84
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>