During SSR/PDR, bring down wsa at down
event and restore after SSR up event.
Change-Id: I9a8d3c109144cb0a911cd7597bffc220b0ce95b7
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
In WSA analog driver, disable MCLK only if clock enabled.
Change-Id: I3a6aa42dc258e3c6ad1ceccdf74f0136338d79b2
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
For bolero 2.x, update dmic clk_div to use 1.2M
instead of 600k if non-island usecase.
Change-Id: Ia057283c164de576cfd05f4c64f6db24db589ead
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Glitch is coming sometimes during amic record.
Correct sequence to resolve the glitch.
Change-Id: I3c062632229826f6fe32e2f1ea9e07381c21d902
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Remove soundwire driver ops to avoid deadlock during audio
sub system restart.
Handle SWR DMICs enable/disable during usecase.
CRs-Fixed: 2648763
Change-Id: I73cc95ae389da9dee742544f29ceca9d9b7ac9c6
There is higher noise during headset btn press on some
headsets. Change hold time after button release to 600ms
to resolve the noise.
Change-Id: I87e5e13ce39849090da3d3e50ec53e7fd5fdc0e7
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Handset record does not resume if pdr is performed
during record. Make VA DMIC_CTL registers as volatile
to write proper value of register to hw.
Change-Id: I2cc10d2eab18e3e8126c56caffa126195c02b4e3
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Micbias2 internal pull-up remains enabled even after headphone is detected.
This results in power issues. Disable pull up after insertion detection.
Change-Id: I335dbb498192738fc282421d92510400a661cf0c
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Check soundwire clock source before clock switch to avoid
redundant soundwire device suspend for the same clock source.
Change-Id: I613789b23c171959a60c9a059a30b3f1494f3dfa
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Headset is corrected as lineout during SSR/PDR. This is
because adc voltage is not measured correctly due to SSR state.
Enable flag deinit_in_progress during SSR down to check if
device is not reported and disable it after device up.
Change-Id: I6fc4fff4149c36ba16aa668a960505504a5d811f
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Update function return value to avoid compile error
Change-Id: Ia463ea8bb3c87ac6fb9f5959be0f5a6fa461667d
Signed-off-by: Kunlei Zhang <kunleiz@codeaurora.org>
In bolero 2.1, VA macro has low power decimations
and support 600k only at 8k/16k. For non-LPI sessions
running at 48k will have mute data if use 600k.
Update driver to use 1.2M for non-LPI sessions.
Change-Id: If495ba8fb780bd22f188835ef87a0ec947df363c
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Ear Path is not disabled properly disabled at power down.
Disable clk and other registers depending on whether ear
takes aux or hph path at pwd.
Change-Id: I987904ddd9bf21b9ed96e754e6eb2514b4d277ce
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Update smart boost sequence for wsa883x speaker amplifier
to reach max voltage at full scale signal.
Change-Id: Ic1a9ce13753d6e573c7916ae99643c85d6892aa0
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
During voice activation and audio capture concurrency usecase,
there is no common reference count for DMIC clock enablement,
results into mute when one usecase tears down. Change enables
a common reference count in bolero codec driver between voice
activation usecase and audio capture usecase to avoid mute
during VA and audio capture concurrency.
Change-Id: I424c941178d7e9ff91288a50ba27605b2b9d3abe
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Signed-off-by: Akhil Karuturi <akarutur@codeaurora.org>
Add new codec dai for each wsa883x, since each WSA is
initialized as a codec and not as aux device.
Change-Id: I023c14faffcd1c1149531040ceae9ed1fe161385
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Add new codec dai for wcd938x, since WCD is
no longer initialized as an aux device but as a codec.
Change-Id: I1cb60ef3ef71692970011ef6c3b50cf9cd64b7ca
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Different ADC modes need different clock rate. Update clock rate
based on the ADC mode.
Change-Id: Idaeda95a15e99038927de115727ece897bba7c29
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Update regmap table with proper read write registers to
enable tx paths in a three mic usecase.
Change-Id: Iab53e3a92f02ddc282e621b8063f3c051fe658f6
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Adding changes for Bolero codec snd controls structure
to support TX HPF cut off frequency setting
Change-Id: Ia601d7b4bc6d80ff584b5bf6df47663080b2aa6f
Signed-off-by: Shalini Manjunatha <shalma@codeaurora.org>
In the existing code, Over Current Protection interrupt is enabled
as part of MBHC insertion event handling.
This is causing audio mute on Stereo Headset randomly.
This OCP through MBHC is no more required as the
Over Current/surge is handled in HW.
Removing the OCP enabling code to fix the issue.
CRs-Fixed: 2622368
Change-Id: Iae8994aa365eb294793190f665407af111b23c82
Signed-off-by: Ramlal Karra <rkarra@codeaurora.org>
Update boost level setting of value 5.5v and 6v
for 8815 and 8810 variants.
Change-Id: I6e71c58bddb4958f1eda4ab4d4630bcb6073dcdb
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Add system sleep ops and invoke force runtime suspend for all
the macro drivers in bolero in order to synchronize
system suspend and runtime suspend callbacks.
Use freezable delayed work queues instead of normal
delayed workqueues in order to avoid contention with
pm suspend callflow.
Change-Id: Ibb0d35ad80c09e7f2a7032b4daef53c359056dfd
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
Update audio capture sequence to avoid multiple bank switches
during multi mic usecase that helps in reducing the latency
for path setup.
Change-Id: Idac8bca97b3503cdbf82bb482e8a297a1fd20893
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
The haptics module in some PMICs has SWR slave data port which connects
to Bolero SWR RX port and it can receive PCM data from that port and use
it as the pattern source to play the vibration. Add the driver to
support it.
Change-Id: I5e6811ac8d81a60c3cd226029ef22ee12ed46f1d
Signed-off-by: Fenglin Wu <fenglinw@codeaurora.org>