Gráfico de commits

151 Commits

Autor SHA1 Mensagem Data
Sudheer Papothi
0e19126c1f ASoC: bolero: Add concurrency support on audio capture path
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>
2020-03-26 18:45:23 -07:00
qctecmdr
53e8920027 Merge "asoc: codecs: Add system sleep ops for macro drivers" 2020-03-25 09:38:23 -07:00
Shalini Manjunatha
2191529cac asoc: codecs: Support for TX HPF cut off frequency snd ctrl
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>
2020-03-24 00:46:41 -07:00
Aditya Bavanari
e2f52ea5c0 asoc: codecs: Add system sleep ops for macro drivers
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>
2020-03-23 20:44:38 -07:00
Sudheer Papothi
34e6984323 ASoC: swr-dmics: Enable soundwire DMICs on lahaina
Soundwire DMICs provide the same quality as regular DMICs but
the interface is soundwire. This reduces the number of pins
on the MSM. Enable soundwire DMICs on lahaina.

Change-Id: I4245369fdcb29cf96f315ebc1d2e9a83a0fbc14b
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2020-02-18 14:01:42 -08:00
qctecmdr
d6db8c1cfc Merge "ASoC: bolero: Update TX HPF sequence for AMIC" 2020-02-17 02:58:03 -08:00
qctecmdr
38fbcf2e3f Merge "asoc: bolero: increase tx_mclk_users when enabling VA-MCLK" 2020-02-17 02:58:03 -08:00
Ramlal Karra
3e2c37d273 asoc: codecs: Add unified SWR Tx mapping support
Add dynamic port enablement for wcd938x and
wcd937x targets to support unified swr tx port
mapping added as part of SWR 1.6 updates.

Change-Id: If0cf823dc51028fd5bd95f5a49ffe05998526be6
Signed-off-by: Ramlal Karra <rkarra@codeaurora.org>
2020-02-05 09:56:57 -08:00
Sudheer Papothi
4d1a9042f2 ASoC: bolero: Update TX HPF sequence for AMIC
Update TX HPF sequence for AMIC to avoid pop during
audio capture.

Change-Id: Ib70fc5cd05f67c97977db96487294bfe14f554ad
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2020-02-04 18:42:23 -08:00
Meng Wang
1bcddfb114 asoc: bolero: increase tx_mclk_users when enabling VA-MCLK
When enabling SVA, tx_mclk_users is not increased. If starting
and stopping recording after enabling SVA, tx_mclk will be closed
when powering down tx mclk widget. Increase tx_mclk_users when
enabling VA_MCLK to avoid mismatch.

Change-Id: I02d9400cf7309464bbba1e6749cfcfcf99f5876a
Signed-off-by: Meng Wang <mengw@codeaurora.org>
2020-02-04 18:37:01 -08:00
Sudheer Papothi
265ff04ddc ASoC: bolero: Add support for bolero v2.0 hardware
Add support for bolero v2.0 hardware functionality.

Change-Id: I5dca1666b92d6e8de0adae8a11cab0fbca61ab6d
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2020-01-29 11:54:30 -08:00
Sudheer Papothi
2732740dd2 ASoC: codec: Change micbias widgets to supply widgets
Upstream kernel deprecated micbias widgets. So, replace micbias
widgets with supply widgets.

Change-Id: Ie7d369d887c85f85ee477877425516caae4d7e33
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2019-12-25 14:50:54 +08:00
qctecmdr
070e06c2eb Merge "asoc: codecs: bolero: add delay after toggling hpf gate" 2019-12-08 21:58:46 -08:00
Laxminath Kasam
696b14bfa2 asoc: Audio bringup changes for bengal
Audio bringup fixes for bengal target.

Change-Id: Ic79c478fe3c6b80eeb48aa2bcf1887c8dd8f5edc
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2019-12-04 15:07:29 +05:30
Karthikeyan Mani
9366ce6e8b asoc: codecs: bolero: add delay after toggling hpf gate
Add delay after toggling hpf gate to reduce noise
levels while starting recording use case.

Change-Id: I1a7b1b0a339abb3642ca8420753e9d07023acf89
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2019-11-25 14:47:30 -08:00
qctecmdr
344bca82e3 Merge "asoc: bolero: Add va/tx macro registers for bolero 2.1" 2019-11-14 20:10:27 -08:00
Laxminath Kasam
fbd95edd79 asoc: bolero: Add va/tx macro registers for bolero 2.1
Update VA/TX macro registers for bolero 2.1

Change-Id: I6be9632407c85a36bc746c65b34a52812548ad2a
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2019-11-12 12:32:37 +05:30
Laxminath Kasam
b03e82deda asoc: bolero: Update tx swr clk widget for bolero 2.0
TX_SWR_CLK widget is not needed for bolero 2.1.
Update it to retain for bolero 2.0.

Change-Id: I2b38fb807460ca31d1e968e0eb69a24ce46a531e
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2019-11-05 14:56:08 +05:30
qctecmdr
521c66c14c Merge "asoc: codecs: bolero: toggle zero gate for first hpf update" 2019-11-01 21:30:24 -07:00
qctecmdr
2e421b5771 Merge "asoc: bolero: Update SWR TX moved to AO region" 2019-10-30 10:44:38 -07:00
qctecmdr
ec6cd57ba0 Merge "asoc: codecs: Update VA/TX controls based on bolero version" 2019-10-30 10:39:18 -07:00
Laxminath Kasam
2e13d64340 asoc: bolero: Update SWR TX moved to AO region
In bengal target, SWR TX moved to AO region.
Update SWR TX as child of VA macro and handle
respective SWR register/clock sequences from
VA macro.

Change-Id: I6b632ce56a885f2ccc8516840b0e5d270fe0b2c0
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2019-10-22 15:29:58 +05:30
Laxminath Kasam
4651dcbbb0 asoc: codecs: Update VA/TX controls based on bolero version
Update route map, dapm widgets, snd controls for VA and
TX macros based on bolero version.

Change-Id: I6f517f2c243624d44601192295c50838c7ee0e05
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2019-10-22 15:21:25 +05:30
Vatsal Bucha
d06525fa68 ASoC: Fix audio distortion issue during headset record
Audio is distorted during first 3 secs on headset record
while doing device switch from dmic to headset mic.
Disable BCS before slow insertion detection and enable it
afterwards to resolve the issue.

Change-Id: Ie5bc4b5292e5f69066760cab44d78989a74f13f4
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
2019-10-15 05:07:51 -07:00
qctecmdr
0f6392dc14 Merge "asoc: codecs: Check for core votes count before accessing registers" 2019-10-15 00:22:20 -07:00
qctecmdr
75b962681c Merge "asoc: codecs: bolero: Do not return error for unused gpio" 2019-10-12 08:58:56 -07:00
Aditya Bavanari
d577af909c asoc: codecs: Check for core votes count before accessing registers
Check for core votes count before accessing swrm registers
to avoid NOC errors.

Change-Id: I5689d6a6db0886ed4cc791738a28290f3d953412
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2019-10-10 20:29:49 +05:30
Karthikeyan Mani
144659b943 asoc: codecs: bolero: toggle zero gate for first hpf update
Instead of disabling hpf zero gate in hpf callback,
disable it while setting the inital cut off frequency
itself to not have any glitches.

Change-Id: I932aa0b2d68c2e8afd5cddd3d5fe17cbc98a5afb
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2019-10-08 15:34:01 -07:00
qctecmdr
212f9e9be2 Merge "ASoC: tx-macro: Disable wakeup source for soundwire tx data gpio" 2019-09-21 22:09:40 -07:00
qctecmdr
dc92f04266 Merge "ASoC: bolero: Fix audio mute during first 4-5 seconds in headset record" 2019-09-20 00:35:48 -07:00
qctecmdr
96957b41b9 Merge "ASoC: bolero: Update init registers for tx and rx paths" 2019-09-20 00:29:19 -07:00
Vatsal Bucha
126be65693 ASoC: bolero: Fix audio mute during first 4-5 seconds in headset record
Audio mute is observed if record is started as soon as headset
is inserted. This is because hold time after button release is set
as 800ms causing the delay. Change hold time to 200ms to fix this issue.

Change-Id: I98028fca3412a3d47ad8e5154f25ff1726426955
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
2019-09-17 14:15:48 +05:30
qctecmdr
b42b242127 Merge "ASoC: Add support for event listener from the codec" 2019-09-17 00:55:50 -07:00
Sudheer Papothi
bc3f1e5ac7 ASoC: tx-macro: Disable wakeup source for soundwire tx data gpio
soundwire tx data gpio is wakeup source capable. Disable the
interrupt capable during voice activation usecase to let the
device enter into power collapse during voice activation usecase
on headset.

Change-Id: I64a0b5da249dd3da37310fb80909a0ac5fefae54
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2019-09-17 04:03:10 +05:30
Sudheer Papothi
72fef48d6b ASoC: bolero: Update init registers for tx and rx paths
Update init registers for tx and rx paths in an array.

Change-Id: I2738af7639ffec05b5c93e86a2a3f4cf7ccb36fe
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2019-09-15 00:13:35 +05:30
Karthikeyan Mani
8d40a06347 asoc: codecs: Add core vote functionality for soundwire
Add callback to vote for core votes that the
soundwire master can use while doing a clock request.
Check for pinctrl function errors and in case of any
failures return from clock enable with an error.

Change-Id: Ic5c200d7179a1e3a9695955d8711358cd7618bd1
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2019-09-11 11:20:27 -07:00
Karthikeyan Mani
b44e4551b1 asoc: codecs: bolero: Do not return error for unused gpio
If soundwire gpio is not used, then no need to return
error if not able to get gpio data.

Change-Id: I97705b49d3b01f99b7a4e91190a15ffb211d32f2
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2019-09-09 23:08:07 -07:00
Karthikeyan Mani
1dcd5a3ab4 asoc: codec: bolero: add adc mode control
Add enum mixer control to support changing
adc mode bits for different power modes in
recording use case.

Change-Id: I9a0287b7b32285d39e65f98b5518dedd3a24af94
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2019-08-22 15:09:56 -07:00
Aditya Bavanari
50ef13eca6 asoc: codecs: Fix LPI TLMM GPIO invalid access issue
Runtime suspend gets called multiple times during SSR
scenarios leading to clock count mismatch. Add logic
to prevent this in all macros and pinctrl lpi driver.

Change-Id: I380631c1db8cd7d94a8909affd8c96c87f24817c
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2019-08-09 15:14:43 +05:30
Sudheer Papothi
06a4c648f0 ASoC: Add support for event listener from the codec
During low power island mode, register to event listener
to process soundwire inband interrupts from the soundwire
master driver.

Change-Id: Ib15f5ec59ea19010dbb8f9744de76bfc2ca7eebb
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2019-08-08 05:22:11 +05:30
qctecmdr
36c2daf90b Merge "asoc: codecs: bolero: increase hpf cut off frequency time" 2019-08-02 07:03:27 -07:00
qctecmdr
7d22ca731e Merge "asoc: codecs: bolero: enable button click suppression block" 2019-07-31 03:34:23 -07:00
qctecmdr
bb4341f383 Merge "asoc: codecs: Update on support for WCD938x DMICs" 2019-07-29 03:57:10 -07:00
qctecmdr
aae17991cb Merge "ASoC: bolero: tx-macro: Fix clock sequence for headset SVA" 2019-07-29 02:39:50 -07:00
Karthikeyan Mani
6bd895ef4b asoc: codecs: bolero: increase hpf cut off frequency time
Increase hpf corner cut off frequency call back time
to sustain 150Hz cut off for a longer time to avoid
DC noise coming to the decimators during a record
session.

Change-Id: I5aa4f4c38a5dfd84655995217fdfc1708713c178
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2019-07-26 15:41:04 -07:00
Karthikeyan Mani
765eaabf24 asoc: codecs: bolero: enable button click suppression block
Enable bcs block for recording use cases to
reduce glitches caused by button events or
plug removal events on the record path.

Change-Id: I7a8556178a196c03009cdc487aff5424d5e1787a
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2019-07-25 10:45:26 -07:00
Sudheer Papothi
6cc7f52a6d ASoC: bolero: tx-macro: Fix clock sequence for headset SVA
Fix soundwire clock sequence for headset SVA usecase to avoid
tx clock voting during low power SVA usecase.

Change-Id: I9613eee6a0b66560fa1108b4887af71507d345e7
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
2019-07-25 00:00:18 +05:30
Karthikeyan Mani
f3bb8188ef asoc: codecs: bolero: add headphones equalizer dai
Add a dai to get capture data which can be used for
headphones equalizer purpose.

Change-Id: Idc29faa54810be8cb2564c5c771c59ccf981a458
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
2019-07-23 13:56:56 -07:00
Laxminath Kasam
549d11d4fe asoc: codecs: Update on support for WCD938x DMICs
WCD938x codec can support upto 8 DMICs.
Fix driver to enable support for these DMICs
over soundwire.

Change-Id: I82b9c7c6f56271c03acee3a966dbaa4fefb62102
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
2019-07-18 13:44:17 +05:30
Meng Wang
bf1fe8fbad asoc: bolero: force bolero runtime suspend during adsp ssr
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>
2019-07-02 08:26:55 +08:00