During adsp SSR, bolero runtime suspend is not called and
hw vote clks are not reset. Force bolero runtime suspend
during adsp SSR to avoid kernel panic.
Change-Id: Iff5983ef07f77ecc7f3f344948c013906b4bad60
Signed-off-by: Meng Wang <mengw@codeaurora.org>
Reset GFMUX reg for va-macro and wsa-macro when adsp is up
after SSR. And check if clock is enabled before accessing
register to avoid kernel panic.
Change-Id: Idce9695be552cab0e8e389cf72eeb7a67a754bf9
Signed-off-by: Meng Wang <mengw@codeaurora.org>
After SSR/PDR, the lpass clocks will be in off state. Force restart
clocks after SSR/PDR, if enabled before SSR/PDR, to reenable the clocks.
Change-Id: I3d850d92bdc6324aa7a64a83a9066f388a85c7f7
Signed-off-by: Meng Wang <mengw@codeaurora.org>
Add support for LPASS Audio HW vote needed for low power AMIC
VA usecase.
Change-Id: If6642d418dbf2cc9773fbd0ec0fe35c30afac140
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Exposure of driver bind/unbind to userspace via sysfs may
lead to unexpected behavior.
Hide bind and unbind by driver attribute.
Change-Id: I20d6ee653bcc16af15d6368664aaf240c6645cd0
Signed-off-by: Xiaojun Sang <xsang@codeaurora.org>
Fix mismatch in TX clock count during three mic VA usecase.
Change-Id: I5f86fc8bf4f379e14ed8e15376f918b622bc221f
Signed-off-by: Sudheer Papothi <spapothi@quicinc.com>
Enable TX clock during VA path setup for SVA usecase to make
sure LPASS audio is in active state.
Change-Id: Ic835905e48919e3c97ab2b82b43b90a146f4f32e
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Add Bolero clock resource manager driver to handle/manage
bolero clocks for all the concurrency usecases like record
+ voice activation.
Change-Id: I970a05d96fc9060b44bfe670d465f0b9d72cc53b
Signed-off-by: Vidyakumar Athota <vathota@codeaurora.org>
Clock Fs generation registers are in always on domain but
is needed for all the playback and capture usecases. Enable
clock Fs generation in the boloero codec after the clock
enablement.
Change-Id: I3a9cf14660f871b26ec96ef8b3e245ba5dadeb78
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
VA macro is currently lacking capability to dynamically select
island mode on Kona. Add support in VA macro driver to read MUX
selection register from DT to enable dynamic island mode select.
Change-Id: I5462265fffcc6d6bbb3ff6eead5f44f0b8909141
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
VA HW macro supports three BE DAIs on Kona. Add support to
enable the third one.
Change-Id: I418a6a0bb1bcbc06fe71de0977d974432e1d6c22
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
Userspace takes 10 seconds to close the session when
pcm_start fails due to concurrency with PDR/SSR.
Match the SSR timeout in va macro to user space
session tear down delay.
Change-Id: I1e0fb4bdb25a43cbe7c345a47c115410b964e6eb
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
VA macro is currently lacking capability to dynamically select
MCLK on Kona. Add support in VA macro driver to read MUX select
property from DT to enable dynamic MCLK MUX select.
Change-Id: I46d0b760119a2d8c2ed754ae9cb43ba717fa300b
Signed-off-by: Xiaoyu Ye <benyxy@codeaurora.org>
Some alsa API are removed in kernel-4.19 which would cause
codec driver compile failure. Update codec driver to fix it.
Change-Id: Ie358ec1863082166958059c179300b453d2a03ad
Signed-off-by: Meng Wang <mengw@codeaurora.org>
Switch audio drivers to SPDX identifier on msm-4.19.
Change-Id: Ic3f0230a516db251b8d81e8a7e73dbc04d66fe1b
Signed-off-by: Meng Wang <mengw@codeaurora.org>
The clk users count goes out of sync with the actual
clk requests from clients during SSR/PDR. Increment the
clk users only after the clk request is successful.
Change-Id: I512f037a118f4763a64e7a64f7f559bcfa37a37f
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
Reduce auto suspend delay to 100ms from 1500ms for voting LPASS
NPA resource to reduce delay in entering LPASS into island mode.
Change-Id: Ic38f7b9e8d794963e51c30dfd03da586bca84bd2
Signed-off-by: Mangesh Kunchamwar <mangeshk@codeaurora.org>
Updates for voting for LPASS island NPA resource while
access any LPASS registers.
Change-Id: Ibcebd2d6ef368f309594689335bc07a36eafeaf0
Signed-off-by: Mangesh Kunchamwar <mangeshk@codeaurora.org>
Sometimes observed that session is taken more time to teardown
after ssr. Increase timeout to allow more time for session
to be tear down.
Change-Id: I3f1b4d8f583ad5b9c8f5e1b90af9c576ae6bd2b2
Signed-off-by: Ramprasad Katkam <katkam@codeaurora.org>
Runtime HPF param change leads to TX distortion at the beginning.
Unmute HPF after param change.
Change-Id: I7683ca047123dd004fb2dd019365305edfc72ea5
Signed-off-by: Xiaojun Sang <xsang@codeaurora.org>
Update ignore suspend for AIF in/out and dapm input/output
widgets for bolero and wcd937x codecs to avoid suspend
of codec during active usecase running even after APSS
goes to suspend.
CRs-Fixed: 2321226
Change-Id: I277129e8e657485c56414a385150c4da55382770
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Add proper null checks and initialize variables
in rx-macro, tx-macro, va-macro and wcd937x drivers.
Change-Id: I90899c84d3391305b9a24d4b043adc08b7c0332a
Signed-off-by: Tanya Dixit <tdixit@codeaurora.org>
Observe pop at start of recording. Change the
order of HPF setting in decimator enable path
and update freq_change bit for HPF corner frequency change.
Change-Id: I6257671224a792a2afd71209fdc4e0102a83ced8
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
ASoC core assigns dai id value to num_dais if
AIF dai-id passed is 0. Since we have different macros
passing AIF dai-id as 0, they are replaced in ASoC core.
To handle this, update AIF dai-id in respective macros
to start with value 1.
Change-Id: I222c088289292aa226c90710e56a8c94af5615cd
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 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>