Add separate config for generic IRQ using regmap-irq and
compile it as a part of wcd_core ko.
Change-Id: I844ad72bf039c851a67d968e4b67c10105389932
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Add irq utils support for tanggu codec. It is
based on regmap-irq framework.
Change-Id: I93ad71f41a8bf62313bee5b6c374809c93219f5c
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
In bolero, Rx and Tx macros require multiple
lpass clock sources. Update audio clock driver
to support multiple lpass clock instances as required for
Rx and Tx macros.
Change-Id: Ia7d766c52c8edb65f3ceb0585c6fd5a2fee6c5a6
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
Update config file and make rules for msmsteppe
compilation.
Change-Id: I374a0725a7dd36edc9e04652fb07dc719310565c
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
RX macro supports both native and non-native family
sample rates. Add changes to support both family frequencies.
As soundwire is active for few seconds after teardown of a session
and say next session is of different family(native) which needs switching
the clock at soundwire before configure native MCLK frequency.
Change-Id: I7f6652f1569cfeef5075d92bfd2beadc203b7036
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Add support for RX digital portion to register
as macro to bolero codec. ASoC dapm and dai
functionality of RX macro is associated to
bolero codec itself.
Change-Id: Idb924b33cfc5d258d2f876a31603e724ad9699e9
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Add support for TX digital portion to register
as macro to bolero codec. ASoC dapm and dai
functionality of TX macro is associated to
bolero codec itself.
Change-Id: I1e222610d1750eccd6822d9901b17ec2ea509389
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
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>