Headset is corrected as lineout during SSR/PDR. This is
because adc voltage is not measured correctly due to SSR state.
Enable flag deinit_in_progress during SSR down to check if
device is not reported and disable it after device up.
Change-Id: I6fc4fff4149c36ba16aa668a960505504a5d811f
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Ear Path is not disabled properly disabled at power down.
Disable clk and other registers depending on whether ear
takes aux or hph path at pwd.
Change-Id: I987904ddd9bf21b9ed96e754e6eb2514b4d277ce
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Add new codec dai for wcd938x, since WCD is
no longer initialized as an aux device but as a codec.
Change-Id: I1cb60ef3ef71692970011ef6c3b50cf9cd64b7ca
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Different ADC modes need different clock rate. Update clock rate
based on the ADC mode.
Change-Id: Idaeda95a15e99038927de115727ece897bba7c29
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Add micbias control API to enable SWR DMICs on lahaina target.
Change-Id: I48152971e1af8dedc98ada20e4e808cf18720869
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
While enabling headphone PA, bypass preref filter
to resolve clipping issue in the first second.
Change-Id: I7524fe3215bac267c5e199c715931712e16adf88
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
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>
Add widgets to enable mic bias standlaone without
dependency on any use case.
Change-Id: I1f61cd9403d3f83baa199f9c669680d9c7b5c371
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Update snd info API and userspace and get codec info.
Change-Id: Ic9cfc89365cf6263a9b1c02403d68e7740bebbeb
Signed-off-by: Meng Wang <mengw@codeaurora.org>
During SSR, sometimes swr get logical addr fails.
Add sufficient delay after reset and retry logic
for get logical addr.
Change-Id: I2a932e99896e0055f3b35f9b251008612f43b79f
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
ADC mode for tx 0,1,2,3 is not disabled at power down after record
causing noise during next headset record. Disable ADC mode
to resolve noise.
Change-Id: I0a98b06318b55cfce20c6a90fecd71d83dce28c5
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
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>
Add support for setting EAR PA gain directly using
mixer control.
Change-Id: I3667d8f26dc648e44d12c42be0940210763e08d5
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
During SSR, codec device will be down and wait till
receiving up notification before doing any register
reads or writes.
Change-Id: I0e2967990bfc9d0d780d4c7e666a4c31159e70ce
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Update mute for RX chain related to AUX (INT2) when
tearing down ear path driven by AUX.
Change-Id: I0ab2630bb681e8dc800c99245b1cd68120290c2b
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Update soundwire slave clock rate based on power mode on
WCD938x codec for better power numbers.
Change-Id: I6719d7eab7562bf4fe45b3e11fbae6e0a629f9b1
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
INT2 chain drives AUX output to WCD.
EAR DAC on WCD can take input from HPHL/AUX chains.
Add register sequence updates to support EAR DAC
over AUX chain path also based on mixer setting.
Change-Id: I71db6c02f4579e3beba2816c1cfa5a492d91d702
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Machine driver requires a mechanism to know the codec variant
to limit supported configurations respective to that codec.
Add a function to return the wcd938x codec variant.
CRs-Fixed: 2488322
Change-Id: I16631cccb3abd32c933389e110e5b5a6b762a0e2
Signed-off-by: Vignesh Kulothungan <vigneshk@codeaurora.org>
Apply micbias configuration from device tree for WCD938x for
Kona target.
Change-Id: I45a47eb54f9fffb88259ba7e69633e3d3ebcb6a4
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
Cleanup TX ADC recording path sequence to remove any
legacy register writes which is not required anymore.
Change-Id: I204280b1631b11fc275f765a2454bda4cec01b18
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Delays in headphone power down path can be removed
and without any click and pop issues. This way it
reduces headphone power down time.
Change-Id: Iedfbbee7d2be27cc5dfc62c9def72e7be81d7eaf
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Enable button click suppression port to send mbhc
events over the port to reduce glitches caused
by button events or plug removal events on the
record path.
Change-Id: I3f913ab1287f06afe6b5fc95da626f7c78ab448f
Signed-off-by: Karthikeyan Mani <kmani@codeaurora.org>
Enabling watchdog interrupt during bind causes spurious
interrupts. Disable interrupts during bind and enable
during path setup to fix this. Also enable and
disable interrupt for ear pa for wcd938x.
Change-Id: I4a9526d7b0a63f5325cec6dfe7a4e302ae76fc40
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
As DMIC2 is muxed on same channel with MBHC
on soundwire port3 of WCD938x codec, need to set
selection bit for DMIC2 during recording usecase
over it.
Change-Id: Ice9b92eb964af25e47db4b3d8d25db07a82a9bf2
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
Add support to enable LDOH in headphone path when equalizer
hardware installed on the device.
Change-Id: Ia575544650e5d03404fc77e3c2a9db729a2997a5
Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org>
OCP is resulting in mute issues during audio playback.
Traverso has surge protection enabled in hw. Thus
OCP can be disabled for traverso.
Change-Id: I5af745e9c1fb41640317a406adff59bcde81c37e
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
Add variant entry support for wcd937x and wcd938x codecs to
differentiate between wcd9370/80 and wcd9375/85 variants.
Change-Id: Ife20d14462a0b0968e0458471af3823872592e10
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>