提交線圖

69 次程式碼提交

作者 SHA1 備註 日期
Srinivas Marka
f804586860 asoc: mbhc: avoid null pointer derefrence
fix to avoid null pointer dereference by checking
for the structure to be non-null, in below functions
wcd9378_mbhc_post_ssr_init of wcd9378-mbhc and
interpolate_zdet_val, usbcss_sysfs_store of wcd939x-mbhc.

Change-Id: I37979f969786c5490e1964913ad61123a4e09006
Signed-off-by: Srinivas Marka <quic_smarka@quicinc.com>
2024-05-17 19:18:24 +05:30
Prasad Kumpatla
664a4e97ac asoc: wcd939x: add support for wcd dmics
Added support for wcd dmics.

Change-Id: Iceaf4363aff7d666da23e85c75c58038cbd6dd70
Signed-off-by: Prasad Kumpatla <quic_pkumpatl@quicinc.com>
2024-04-11 02:34:55 -07:00
sarath varma ganapathiraju
dc14f27e9e asoc: cdc: wcd939x: update sleep time during reset
updated sleep time to 80us from 20us after updating the
reset gpio pin from sleep to active state to give ample time
for HW to reset the pin state to active, to resolve the
component registration issue which is seen on stability
runs.

Change-Id: Icd13bf36d56906553352e595d07e478c23d1c13d
Signed-off-by: sarath varma ganapathiraju <quic_ganavarm@quicinc.com>
2024-02-26 04:14:37 -08:00
Prasad Kumpatla
3dd1953f31 asoc: codec: defer the probe if msm cdc pinctrl is not probed
Defer the probe when the msm cdc pinctrl driver is not
proded.

Change-Id: Ia6aaaca7c55b60b53008ffda0fc40e5db407cd2a
Signed-off-by: Prasad Kumpatla <quic_pkumpatl@quicinc.com>
2024-02-01 12:46:33 +05:30
Prasad Kumpatla
372beca218 asoc: codec: remove unwanted modules for pitti
remove unwanted modules for pitti.

Change-Id: I29def6096841d0d9dfcccd81ec9761b7ef6ff1be
Signed-off-by: Prasad Kumpatla <quic_pkumpatl@quicinc.com>
2024-01-09 21:59:51 +05:30
qctecmdr
db5e3d22a0 Merge "asoc: wcd939x: Add conditional check before calling wcd usb api" 2023-11-08 20:45:05 -08:00
qctecmdr
3613355177 Merge "asoc: wcd939x: Change OVP threshold" 2023-11-02 06:39:11 -07:00
Sarath Varma Ganapathiraju
18b9c62542 asoc: wcd939x: Add conditional check before calling wcd usb api
Add conditional check before calling wcd usb api

Change-Id: I9046ece531ea009e8b8cd5db98675960d928c1c6
Signed-off-by: Sarath Varma Ganapathiraju <quic_ganavarm@quicinc.com>
2023-10-30 12:04:38 +05:30
Sam Rainey
556c4befcd asoc: wcd939x: Change OVP threshold
Change default OVP threshold to 4.2V, but set
to 4.0V during CODEC reset.

Change-Id: I4aa8accf7466e144902a2f6a250c1aad91084e95
Signed-off-by: Sam Rainey <quic_rainey@quicinc.com>
2023-10-26 16:25:00 -07:00
sarath varma ganapathiraju
9bb0f01c5d pitti: Add compilation support for target pitti
Add Compilation support for target pitti.

Change-Id: Ibb06ace7332aa87eb5f8082db95f0c0f8b3deb66
Signed-off-by: sarath varma ganapathiraju <quic_ganavarm@quicinc.com>
2023-10-19 22:01:23 -07:00
qctecmdr
f28495fb99 Merge "asoc: wcd939x: Support xtalk for high voltage mics" 2023-10-13 05:48:47 -07:00
qctecmdr
b8620755c2 Merge "asoc: codec: wcd939x: Update the readable swr slave registers" 2023-10-13 05:48:47 -07:00
Sam Rainey
08bc673260 asoc: wcd939x: Support xtalk for high voltage mics
Update zdet and xtalk to support high voltage microphones
with improved accuracy.

Change-Id: I4b0af5ade7f653de4a938162302ec21c4a09891f
Signed-off-by: Sam Rainey <quic_rainey@quicinc.com>
2023-09-29 16:56:12 -07:00
qctecmdr
513787652f Merge "asoc: wcd939x-mbhc: Support zdet ext FET config" 2023-08-19 00:58:49 -07:00
qctecmdr
9b48000bd5 Merge "asoc: wcd939x: Add xtalk/linearizer sysfs params" 2023-08-19 00:58:49 -07:00
Phani Kumar Uppalapati
3fca2376eb 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-15 19:27:16 -07:00
Sam Rainey
3013d88446 asoc: wcd939x: Add xtalk/linearizer sysfs params
Add sysfs parameters to configure xtalk and linearizer
within wcd-usbss for pineapple.

Change-Id: Ie246cb66c1332727b748d648bb7b21a0f4cda377
Signed-off-by: Sam Rainey <quic_rainey@quicinc.com>
2023-08-14 18:18:26 -07:00
Sam Rainey
7610f7b4de asoc: wcd939x-mbhc: Support zdet ext FET config
Capture, write, and restore USB-SS registers relating
to the external FETs during zdet to set the proper
configuration for each channel measurement.

Change-Id: I0be46619312b66017993f9ffa5b8eab968e4dda5
Signed-off-by: Sam Rainey <quic_rainey@quicinc.com>
2023-08-14 17:24:28 -07:00
qctecmdr
36aae5ef90 Merge "asoc: codec: Unvote wcd939x vdd-px supply" 2023-07-27 18:34: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
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
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
Prasad Kumpatla
d6edf04acd asoc: codec: wcd939x: Update the readable swr slave registers
Update the readable swr slave registers while taking the regdumps.

Change-Id: Id38efceb49b6a223f51c24c6d88865b2116b3d29
Signed-off-by: Prasad Kumpatla <quic_pkumpatl@quicinc.com>
2023-06-20 02:39:30 -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
qctecmdr
e1715432ea Merge "wcd939x: update register defaults for wcd939x codec" 2023-04-30 06:09:45 -07:00
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
Prasad Kumpatla
1ea2687052 asoc: wcd939x: Update register sequences for wcd9395 v2.0
Check and update register sequences for wcd9395 version
2.0.

Change-Id: I85fc739744ee2ba2c5dbdc853eb639b84cac6478
Signed-off-by: Prasad Kumpatla <quic_pkumpatl@quicinc.com>
2023-04-15 07:55:43 -07:00
qctecmdr
d3f8aa4eb7 Merge "asoc: codec: Update wcd939x-usbss mode" 2023-03-30 08:32:56 -07:00
qctecmdr
f481fa25f5 Merge "asoc: wcd939x: Add xtalk cancellation gain updates" 2023-03-30 08:32:56 -07:00
Phani Kumar Uppalapati
ec43052bb3 asoc: wcd9395: Add support for WCD9395 EAR path
Add support for WCD9335 EAR playback path.

Change-Id: I643beaa4d27f279621202893062419ce2a3e96ed
Signed-off-by: Phani Kumar Uppalapati <quic_phaniu@quicinc.com>
2023-03-29 22:13:16 -07:00
Sam Rainey
bdf4011578 asoc: wcd939x: Add xtalk cancellation gain updates
Add scale and alpha register value updates based
on computed digital xtalk cancellation gain.

Change-Id: I8c12e2ba7c1566476741fec5459a74549f19cf5f
Signed-off-by: Sam Rainey <quic_rainey@quicinc.com>
2023-03-29 16:48:50 -07:00
Eric Rosas
f66738f4db asoc: codec: Update wcd939x-usbss mode
Update wcd939x-usbss mode on PA enable and disable.

Change-Id: I73a19ea73102ced5c8011a5a1567ebfa372b2e44
Signed-off-by: Eric Rosas <quic_erosas@quicinc.com>
2023-03-29 13:41:27 -07:00
Phani Kumar Uppalapati
ce393052e3 asoc: wcd939x: use half rate selection for HPH DAC
Harmonium supports full and half rate modes for DAC.
Update DAC rate to swr clkdiv2 to achieve better
power performance.

Change-Id: I136a064dc258ee839ea78c9f1051ba34521ac871
Signed-off-by: Phani Kumar Uppalapati <quic_phaniu@quicinc.com>
2023-03-09 11:43:24 -08:00
Prasad Kumpatla
575a0b0dd1 asoc: wcd939x: update compander settings for wcd9395 codec
Update compander settings for wcd9395 codec.Default values
are sufficient to achieve better THD+N at max. volume.

Change-Id: If04539fc2f5dd9fd398997dbb6a32487ce45b788
Signed-off-by: Prasad Kumpatla <quic_pkumpatl@quicinc.com>
2023-03-07 12:50:59 +05:30
Prasad Kumpatla
2a86f48992 asoc: wcd939x: add support to update power modes on wcd-usbss
Get the wcd939x power mode of from mixer ctls and configure
same power mode to wcd-usbss.

Change-Id: I9dc8fe586f7e7608da542b0986bb7c605fc552d4
Signed-off-by: Prasad Kumpatla <quic_pkumpatl@quicinc.com>
2023-03-05 21:34:57 -08:00
qctecmdr
f11d3c6c07 Merge "asoc: wcd939x: remove unwant IRQ register" 2023-02-26 00:43:33 -08:00
qctecmdr
bcd24127e8 Merge "asoc: codec: Add 2Vpk support in WCD939X driver" 2023-02-15 11:11:23 -08:00
Prasad Kumpatla
ace2dd19df asoc: wcd939x: remove unwant IRQ register
For wcd939x LDORT_SCD_INT IQR register is removed, so remove
LDORT_SCD_INT register to avoid CMD ignore errors from RX SWR
while booting.

Change-Id: I6dfe6a1c32fddbcdbbf388b47efde60b6b4b5f35
Signed-off-by: Prasad Kumpatla <quic_pkumpatl@quicinc.com>
2023-02-14 13:00:22 +05:30
Sam Rainey
742849e4e9 asoc: wcd939x: Disable legacy surge protection
Disable legacy HPH surge protection
for certain platforms. Enable HPH over-current
protection for all platforms.

Change-Id: I147321417ad2152530a71b3990a7cbf064c9299f
Signed-off-by: Sam Rainey <quic_rainey@quicinc.com>
2023-02-08 17:10:00 -08:00
Sam Rainey
837696b627 asoc: codec: Add 2Vpk support in WCD939X driver
Add support for HPH 2Vpk output mode in the
WCD939X driver.

Change-Id: I44a84cde84f0feee6d7d1255e097a5ffb616f78e
Signed-off-by: Sam Rainey <quic_rainey@quicinc.com>
2023-02-07 02:52:07 -08:00
qctecmdr
a116a9c2f0 Merge "asoc: wcd939x: update correct HPH class h power modes" 2023-02-03 11:08:36 -08:00
Eric Rosas
ebcfc03c12 asoc: codec: Change default CFG0 value
Change CFG0 register value from 0x07 to 0x05.

Change-Id: I0da0e7e754657c66679bd7844616328b2774301c
Signed-off-by: Eric Rosas <quic_erosas@quicinc.com>
2023-02-01 22:58:15 -08:00