Commit Graph

1748 Commits

Author SHA1 Message Date
V S Ganga VaraPrasad (VARA) Adabala
11ddbf9891 Revert "asoc: codecs: wsa883x: remove handling for pre ssr event"
This reverts commit 7ae72e4897.

Signed-off-by: V S Ganga VaraPrasad (VARA) Adabala <quic_vadabala@quicinc.com>
2023-09-21 19:06:14 +05:30
V S Ganga VaraPrasad (VARA) Adabala
519865f2f0 Revert "asoc: codecs: wsa884x: Remove pre ssr handling"
This reverts commit 89d62fdc0f.

Signed-off-by: V S Ganga VaraPrasad (VARA) Adabala <quic_vadabala@quicinc.com>
2023-09-21 19:05:56 +05:30
V S Ganga VaraPrasad (VARA) Adabala
bd06be0f8e Revert "asoc: codecs: lpass-cdc: remove pre ssr notifier call"
This reverts commit 90699117c0.

Signed-off-by: V S Ganga VaraPrasad (VARA) Adabala <quic_vadabala@quicinc.com>
2023-09-21 19:05:40 +05:30
V S Ganga VaraPrasad (VARA) Adabala
fc7bf21cb2 Revert "audio-kernel: wcd: Disable 1M Pull-up resistor"
This reverts commit f868a71537.

Signed-off-by: V S Ganga VaraPrasad (VARA) Adabala <quic_vadabala@quicinc.com>
2023-09-21 19:05:27 +05:30
Phani Kumar Uppalapati
f868a71537 audio-kernel: wcd: Disable 1M Pull-up resistor
1M Pull-up resistor within WCD causes LPD (Liquid Presence
Detection) failures. So add support for disabling 1Mohm
Pull-up resistor. Re-enable it whenever wcd enters into
audio mode.

Change-Id: Ib3115315bc61d4e6126ddf688653182417d5d54d
Signed-off-by: Phani Kumar Uppalapati <quic_phaniu@quicinc.com>
2023-08-28 22:37:37 +05:30
Vangala, Amarnath
90699117c0 asoc: codecs: lpass-cdc: remove pre ssr notifier call
Remove the PRE_SSR blocking notifier call.
This is not required as early down event is not handled.

Change-Id: Ie448fa2af92edd484d282200cf350c6bddc5f99d
Signed-off-by: Vangala, Amarnath <quic_avangala@quicinc.com>
2023-08-28 22:37:24 +05:30
Vangala, Amarnath
89d62fdc0f asoc: codecs: wsa884x: Remove pre ssr handling
Remove handling for PRE_SSR event.
Move the gpio handling during SSR to SSR UP event.

Change-Id: I2bb1b66db455c6211f1bf12c9e19d7e306a6243a
Signed-off-by: Vangala, Amarnath <quic_avangala@quicinc.com>
2023-08-28 22:37:09 +05:30
Vangala, Amarnath
7ae72e4897 asoc: codecs: wsa883x: remove handling for pre ssr event
Remove handling for PRE_SSR event and move gpio handling
 to SSR_UP event.

Change-Id: Ia4dd87bdcf2f21376fa84e0f447d978ae222e816
Signed-off-by: Vangala, Amarnath <quic_avangala@quicinc.com>
2023-08-28 22:36:52 +05:30
Ganapathiraju Sarath Varma
ffa772dcc9 asoc: cdc: mbhc: Return from hs_rem_irq, when hs is already removed
add check to return from the hs_rem_irq( ) if the headset
removal is already reported.

Change-Id: If9ffc1a471b80f8c9d01875b531748327032926a
Signed-off-by: Ganapathiraju Sarath Varma <quic_ganavarm@quicinc.com>
2023-08-04 01:06:09 +05:30
Prasad Kumpatla
0a93a99156 asoc: wsa884x: adjust the deglitch settings for wsa884x
Issue: when we change the UVLO_DEGLITCH_SETTING (0x3460) 6.8ms
and above, we can’t hear any audio playback from the Music app
even at max voltage (4.1V).

HW team suggest to change the UVLO_DEGLITCH_SETTING from 0x1B
to 0x1D and WSA884X_PA_FSM_TIMER0(0x3433) to 0xC0. By these
two settings playback is not getting mute.

Change-Id: I5d2d57c26d7f467ba3d2231f1642f34643f6d716
Signed-off-by: Ganapathiraju Sarath Varma <quic_ganavarm@quicinc.com>
Signed-off-by: Prasad Kumpatla <quic_pkumpatl@quicinc.com>
2023-08-01 00:07:45 +05:30
qctecmdr
deeec3d073 Merge "asoc: lpass-codec: enable TX Core clock before codec reg access" 2023-07-27 18:34:19 -07:00
qctecmdr
36aae5ef90 Merge "asoc: codec: Unvote wcd939x vdd-px supply" 2023-07-27 18:34:19 -07:00
Vangala, Amarnath
a267ec5239 asoc: lpass-codec: enable TX Core clock before codec reg access
Enable the TX Core clock to enable access to lpass-cdc registers.

Change-Id: I3088e06e9e77ef24b2e4e802852cc3bb65542f5c
Signed-off-by: Vangala, Amarnath <quic_avangala@quicinc.com>
2023-07-25 09:27:58 +05:30
qctecmdr
07d7140867 Merge "asoc: codec: Update efuse param" 2023-07-21 19:58:19 -07:00
Eric Rosas
390ff5ccb9 asoc: codec: Update efuse param
Use correct Efuse register value for headphone 
right-channel impedance calibration.

Change-Id: Ief075b18621dd55d5d636ab5e591b9bf07da5ac8
Signed-off-by: Eric Rosas <quic_erosas@quicinc.com>
2023-07-20 15:11:11 -07:00
Eric Rosas
af6068fd31 asoc: codec: Unvote wcd939x vdd-px supply
When codec goes into suspend, disable vdd-px which
will cause an unvote in PM.

Change-Id: Ia9f958d67fc57dbf3932733797bce7b0eb742363
Signed-off-by: Eric Rosas <quic_erosas@quicinc.com>
2023-07-20 11:54:57 -07:00
Nagarjuna Paladugu
f2b64bd0b2 asoc: Bringup audio kernel for Auto AR GVM makena and lemans
audio kernel bringup changes for auto makena and  lemans LAGVM

Change-Id: If26f743a31ec68d51678d3fd2b409578bc98d2e1
Signed-off-by: Nagarjuna Paladugu <quic_npaladug@quicinc.com>
2023-07-18 20:56:41 +05:30
Sam Rainey
dc708f8a73 asoc: wcd939x-mbhc: Add zdet ramp down timeout
Add impedance detection ramp down timeout after a given interval.

Change-Id: Ia03bc82ec0bb653e6ccd1b6d14c1a9cb996e8ecd
Signed-off-by: Sam Rainey <quic_rainey@quicinc.com>
2023-07-05 11:51:40 -07:00
qctecmdr
eff813c736 Merge "asoc: codec: Add surge reset routine for wcd939x" 2023-06-29 19:10:27 -07:00
Eric Rosas
4d7a95f88e asoc: codec: Add surge reset routine for wcd939x
Enable wcd939x surge reset routine. Add callback for
the event within mbhc and enable it for wcd939x.

Change-Id: Iabc8c3367ae2eca5982db4526c6860e5eba63b76
Signed-off-by: Eric Rosas <quic_erosas@quicinc.com>
2023-06-29 14:17:16 -07:00
Sam Rainey
68eb5f668d asoc: wcd939x: Add linearizer support
Add linearizer software changes, including calculating and writing
software calibration codes.

Change-Id: I964c23cbd1806c25d422bac606ed51e5dc0212e3
Signed-off-by: Sam Rainey <quic_rainey@quicinc.com>
2023-06-29 08:52:25 -07:00
Sam Rainey
4e6ea745c2 asoc: wcd939x: Update MBHC zdet and xtalk
Update MBHC zdet for Harmonium 2.0. Update impedance parameters and
xtalk implementation.

Change-Id: I85e0a5c8816cd54d4892a10ac18bdf1420e92e89
Signed-off-by: Sam Rainey <quic_rainey@quicinc.com>
2023-06-29 08:50:27 -07:00
qctecmdr
069af6015e Merge "asoc: wcd939x: Use local trim for version 2.0" 2023-06-29 04:43:40 -07:00
qctecmdr
c9aa83ed22 Merge "asoc: wcd939x: add support for 2Vpk and 1.4Vpk modes" 2023-06-29 01:12:50 -07:00
qctecmdr
69a087fc8e Merge "asoc: lpass-cdc: Add check for array bound overflow" 2023-06-29 01:12:50 -07:00
qctecmdr
b0ea759df3 Merge "asoc: lpass_cdc: Program FS_CTL reg based on input used" 2023-06-28 13:17:46 -07:00
Phani Kumar Uppalapati
1ddeec779c asoc: wcd939x: Use local trim for version 2.0
For test program < 3, use local default trim values
for harmonium 2.0 version.

Change-Id: I8cdcbe83ddae4626cef1f3dc4bfab3b2c285a0ca
Signed-off-by: Phani Kumar Uppalapati <quic_phaniu@quicinc.com>
2023-06-27 10:15:50 -07:00
Phani Kumar Uppalapati
429f5cc596 asoc: wcd939x: add support for 2Vpk and 1.4Vpk modes
Update wcd939x register settings for 2.15V VDD_RX supply
and for 2Vpk and 1.4Vpk modes depending on the headphone
load impedance values.

Change-Id: Iae5e6087fe96d22c9b9f8b755c468d2e6dface4e
Signed-off-by: Phani Kumar Uppalapati <quic_phaniu@quicinc.com>
2023-06-27 10:13:48 -07:00
Deepali Jindal
3daac9507a asoc: lpass-cdc: Add check for array bound overflow
In lpass_cdc_wsa_macro_config_compander function,
add check for wsa_sys_gain array's index to make sure
it won't go out of bound.

Change-Id: I9d8512726de959e7a0d9e875e966140d70412e25
Signed-off-by: Deepali Jindal <quic_deepjind@quicinc.com>
2023-06-22 10:53:05 +05:30
Ganapathiraju Sarath Varma
d41a40721c asoc: lpass_cdc: Program FS_CTL reg based on input used
Program WSA_DATA_FS_CTL reg based on input used(wsa rx/wsa2 rx)
and also update the channelmap based on mixer cntl.

Change-Id: I0cfac1d9b25dd1211824bcea2753bb6c1131f767
Signed-off-by: Ganapathiraju Sarath Varma <quic_ganavarm@quicinc.com>
2023-06-13 07:57:21 -07:00
Faiz Nabi Kuchay
e460678dab soc: codecs: remove redundant WSA AIF_CPS control
Remove redundant WSA AIF_CPS control.

Change-Id: Iae150ed81acfa4013a08b90e10744e6c49b30537
Signed-off-by: Faiz Nabi Kuchay <quic_fkuchay@quicinc.com>
2023-06-11 22:50:04 -07:00
qctecmdr
0709b47e97 Merge "asoc: wcd939x: avoid static sbu1/2 connections to gnd/mic" 2023-06-11 09:17:21 -07:00
Faiz Nabi Kuchay
42973a5dfc asoc: codecs: Enable main path clk before enabling mix path
Mix path clk is gated by main path clk, as per current logic we are not
enabling main path clk for mix path use-cases.

Enable main path clk before enabling mix path for UPD dedicated backend
to work.

Change-Id: I209d1eaf25f4ef08bbd534f5ecc858e465ce7e18
Signed-off-by: Faiz Nabi Kuchay <quic_fkuchay@quicinc.com>
2023-06-06 11:39:25 -07:00
Phani Kumar Uppalapati
e6eac8ce72 asoc: wcd939x: avoid static sbu1/2 connections to gnd/mic
Currently on pineapple CDP platform, sbu1/2 switches are always
pre-connected to gnd/mic of the jack. Avoid this static connection
and connect/disconnect only when headset insertion/removal is detected.

Change-Id: If3bef6834caeb539492304d8b16808cd09c5afab
Signed-off-by: Phani Kumar Uppalapati <quic_phaniu@quicinc.com>
2023-06-05 11:32:47 -07:00
karishma Tekade
b6e311a3d8 audio_kernel: Fix compilation issues during kernel upgrade
Updated WCD937x, WSA881x-analog and bolero drivers for successful
compilation on kernel6.0 for holi.

Change-Id: Ia91a999f825570b3d7123842f0aad3740c4d25ed
2023-05-23 22:46:24 -07:00
Karishma Tekade
1ed2ece8c4 audio_kernel: Enable audio kernel compilation for blair platform
Updated make files in audio_kernel to support blair platform.

Change-Id: I00c832875fc4558580e22825e9a72305e05ae409
2023-05-23 22:44:18 -07:00
Prasad Kumpatla
2d7bcd0ba2 asoc: wcd939x: update HPH PCM playback sequence
Update start up sequence for headphone pcm playback
for better performance.

Change-Id: If9edcb619c657947724e072788f2d3b8ea3d21af
Signed-off-by: Prasad Kumpatla <quic_pkumpatl@quicinc.com>
Signed-off-by: Phani Kumar Uppalapati <quic_phaniu@quicinc.com>
2023-05-18 00:00:29 +05:30
Kunlei Zhang
de2c1d0cf9 asoc: lpass-cdc: clear active channel cnt if channel is active
Clear active channel cnt if the channel has enabled.

Change-Id: I364f4253398e8d42c3d9e3d44cce7f65c5863bf7
2023-05-09 10:32:39 +08:00
Yuhui Zhao
5990a54d8e asoc: lpass-cdc: add enable check before tx mixer put
Check whether tx channel had been enabled or disabled before
tx channel set.

Change-Id: I1f2e0132f0905a53df989b5d52370c4dfdf7d99b
2023-05-04 12:10:41 -07:00
qctecmdr
a8496e9bf4 Merge "asoc: wcd-mbhc: skip AATC switch settings for SSR/PDR" 2023-05-01 03:16:37 -07:00
qctecmdr
e1715432ea Merge "wcd939x: update register defaults for wcd939x codec" 2023-04-30 06:09:45 -07:00
qctecmdr
b8506aa704 Merge "asoc: wsa884x: update INTR_CLEAR0/1 register to volatile" 2023-04-30 06:09:45 -07:00
Prasad Kumpatla
23853e3c76 asoc: wsa884x: update INTR_CLEAR0/1 register to volatile
In PDR cases INTR_CLEAR registers values are not updating
properly while doing reg_cache in recover from PDR. So add
these registers as volatile to get the exact HW values.

When these registe values are properly updated the FSM_PA
status is reseting properly and working.

Change-Id: I8fa7b01b3256ec8f01edc3fe48a519accfff9638
Signed-off-by: Prasad Kumpatla <quic_pkumpatl@quicinc.com>
2023-04-28 10:46:38 +05:30
Prasad Kumpatla
9a5bca98b7 asoc: wcd-mbhc: skip AATC switch settings for SSR/PDR
In SSR/PDR usb switch settings won't be reset in wcd939x-i2c
driver. So no need to do switch settings for AATC when recovering
from SSR/PDR. Depends on the status to avoid AATC switch settings
again after  SSR/PDR.

Change-Id: If7fc2a84356a406e9cf7e6cc557e19584fda3969
Signed-off-by: Prasad Kumpatla <quic_pkumpatl@quicinc.com>
2023-04-28 10:39:37 +05:30
Eric Rosas
f0358171bf asoc: codec: Fix WCD939X readable reg check
Add static variable to store version to avoid improper
device pointer in wcd939x_readable_register().

Update WCD939X_NUM_REGISTERS macro to be correct size.

Change-Id: Ib594f2f799ac2202ff78c02ccf2f6cdb80ffd38e
Signed-off-by: Eric Rosas <quic_erosas@quicinc.com>
2023-04-27 14:55:10 -07:00
Phani Kumar Uppalapati
eb6008aebf wcd939x: update register defaults for wcd939x codec
Few register default values are incorrectly set for harmonium
codec in the register map table. Fix it by setting correct
values as per the hardware interface documentation.

Change-Id: Ibcb517d6050a4932243ead396e6f89294aab4a23
Signed-off-by: Phani Kumar Uppalapati <quic_phaniu@quicinc.com>
2023-04-26 16:02:12 -07:00
Soumya Managoli
5c3832c4a8 ASoC: lpass-cdc: Toggle WSA fs_cnt_clr bit
During spk playback and VA concurrency,
sometimes WSA CLK goes out of sync causing
VI_TX data mute. To resolve this, everytime
after WSA MCLK enable toggle fs_cnt_clr bit.

Change-Id: Ia936f1d4843890d2ae5c02b039f502941a5427b9
Signed-off-by: Soumya Managoli <quic_c_smanag@quicinc.com>
2023-04-25 23:22:33 +05:30
Prasad Kumpatla
312d94f693 asoc: mbhc: change special HS pr_debug
change the debug print from wcd_mbhc_adc_check_for_spl_headset
func to caller wcd_correct_swch_plug function.

Change-Id: Iabca7351a1abb1ad7b3de15812b4a6014a0463ad
Signed-off-by: Prasad Kumpatla <quic_pkumpatl@quicinc.com>
2023-04-18 22:28:29 -07:00
qctecmdr
db55976826 Merge "asoc: wsa884x: add null check for wsa884x->component" 2023-04-16 08:07:36 -07:00
qctecmdr
8b0e3889df Merge "audio-kernel: remove unused uapi headers" 2023-04-16 08:07:36 -07:00