Put the irq handler of codec device to sleep if device is
not up, to allow other threads to execute meanwhile the device
will be up.
Change-Id: Ic7421bdf236be52070b6d5fcd774b0641368bf2b
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Fix recovery behavior for CSRA66X0 codec to
recover from fault state and add debugfs interface.
CRs-Fixed: 2283380
Change-Id: I796b9e3b36db851f2bf1469e324a7c347510e232
Signed-off-by: Romed Schur <rschur@codeaurora.org>
Update volatile registers list of bolero
VA and WSA macros. Fix sequence for wsa mute
and register access in regmap read/write.
Change-Id: I7984f7e2309933536f3855f6fd4a2e2fd1c4d13b
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
In bolero, for VA and WSA macros require multiple
lpass clock sources. Update audio clock driver
to support lpass clocks instances as required for
VA and WSA.
Change-Id: I7bb676dcbd5c0db09079dd73a30d1b47ce0f8ace
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Add support to dynamically configure clk parent name
from device tree.
Change-Id: I9ae0c34c248503625523a2d1e33d800b2138ed39
Signed-off-by: Surendar Karka <skarka@codeaurora.org>
Codec driver to support direct digital
feedback amplifier (DDFA) CSRA66X0
CRs-Fixed: 2248380
Change-Id: I0aa1b5a2b6e18b6d2dcd5393a10b7d4aebb570e5
Signed-off-by: Mangesh Kunchamwar <mangeshk@codeaurora.org>
wdsp_mgr_bind would schedule work to load wdsp firmware.
Before loading wdsp firmware, sound card registeration may fail.
wcd_dsp_cntl_deinit would get called to free cntl which would be used
in wdsp_load_fw_image which would cause kernel panic.
Clear work queue in wdsp_mgr_unbind to avoid kernel panic.
Change-Id: I6c052fa8ea1ff62a8b075ba191085612242a5005
Signed-off-by: Meng Wang <mwang@codeaurora.org>
When ssr is in progress, during some race conditions
mbhc events are getting reported when codec is still
coming up. Ignore such events without reporting.
Change-Id: I3d3f78f97c2b855fc36a480f38c166bda2d979f0
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
In the case of WDSP boot timeout, api_mutex and ssr_mutex have already
been acquired. There is no need to do mutex lock again during debug dump.
Check the signal enum to see if it's the internal WDSP boot timeout case.
Change-Id: I6fe5e77b1bff72ed5ad463bb1df76c6b02c84c92
Signed-off-by: Xiaojun Sang <xsang@codeaurora.org>
WSA macro supports both ec_legacy and ec_hq.
Add support to capture echo for both types
based on mixer control value.
Change-Id: I3c8a6cd13dabbee3f3687d5e63dc6d4c7bbc4eef
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Add support for DMICs of different sampling rates
with respective clk_div config update in VA macro
register.
Change-Id: I8faa46774cf1fe561af3bd7a284bc7d37f85cb9d
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Add support for regulator enable and disable to
source micbias for VA digital mics.
Change-Id: Ie25fb65103704b04127b23f4c515d6d270f4abf0
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Add codec entry for bolero codec under proc codecs list.
Update the names of wsa-macro gain offset and mode for
wsa8810 variant to avoid conflict with wcd9335.
Change-Id: Icaa2ef7c2f7253060cd7cccd44130b0b12dc0713
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
In vipertooth, both wsa-macro and wcd9335 are present.
wcd9335 doesn't have wsa attached, and wsa-macro supports wsa
attached which defines spkr wsa controls. wcd9335 driver needs to
avoid register same controls if wsa is not attached to it.
Change-Id: Ia3db8982b5214ade95e6d8f27a44a68e20b772a0
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Add support for audio drivers compilation on kernel-4.14.
Change-Id: Id7689cef4ae7cdb6711fed386d2a6b0d427b3fc3
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Currently audio ref clock probe for lpass clock nodes require
pinctrl entry as mandatory. For bolero lpass clocks, there is
no pinctrl required. Allow audio ref clock probe to proceed
with pinctrl based on property of use-pinctrl set to non-zero
value from dtsi.
Change-Id: Ide4a10e89672f0adefd2e0d99830c38191119dfc
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Comparison of headset threshold during special headset detection is
not proper. This results in to improper detection of special headset
and recording usecase failure on special headset. Fix the special
headset detection issue by adding proper check condition while selection
of headset threshold from device tree.
Change-Id: I4c338ded1bcb9fa643e1584eb23c6260fe52acee
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
soundwire bus driver changes to support new soundwire
master driver for Talos/vipertooth.
Change-Id: I70e52a72edd80abc72ccb99b29b1a642debec257
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
Cancel any pending delayed work in device down call
to ensure no work is scheduled during or after a
SSR/PDR sequence.
Change-Id: I4cc89cb1a9d8be732c978044d4eea3cf6644ec30
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Signed-off-by: Banajit Goswami <bgoswami@codeaurora.org>
Use hardware default value for boost state in regmap.
Use correct mask for initial value of boost state.
Change-Id: Ia8b707ba0128662d47059d25325693bc8eaff723
Signed-off-by: Xiaojun Sang <xsang@codeaurora.org>
Add compile support for bolero codec driver and other
interface files along with macro drivers.
Change-Id: Ifa9c5454eebab1dbebb53d60a7a67458d1e6c8f6
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Add support for VA digital portion to register
as macro to bolero codec. ASoC dapm and dai
functionality of VA macro is associated to
bolero codec itself.
Change-Id: I3c5ae045c0e061bd9aa1281231cf2418093d1169
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Add support for WSA digital portion to register
as macro to bolero codec. ASoC dapm and dai
functionality of WSA macro is associated
to bolero codec itself.
Change-Id: Ida9647274e6a0aa392e131a9b08f83b2520802e5
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Update file names of bolero to be compliance
to driver file name convention.
Change-Id: I138d0211803f93152ae7fb01eae68050dada082f
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Reset power_active_ref counter to 0 when it is negative to
take digital core out of reset during next session.
Change-Id: I724ffe6e3547655424238ca02a9bf8ac24b101fe
Signed-off-by: Meng Wang <mengw@codeaurora.org>
Add support for bolero clock changes for
all macros.
Change-Id: Ib7b238ffd9595b6fd2236f4a3d2bcfe545b3c5fb
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>