ASoC: wcd938x: Enable digital clk for tx0 if micbias enabled
Mute is observed in amic record sometimes in concurrency with sva. This is because if record is over tx0 then digital clk is not enabled. Enable clk after enabling micbias to resolve mute. Change-Id: Iba3aa4fade0ac5889218eaee2c5d2c4bd4431d50 Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
This commit is contained in:

committed by
Gerrit - the friendly Code Review server

parent
d155d7f509
commit
fb63ca16cc
@@ -1456,7 +1456,7 @@ int wcd937x_micbias_control(struct snd_soc_component *component,
|
|||||||
mutex_unlock(&wcd937x->ana_tx_clk_lock);
|
mutex_unlock(&wcd937x->ana_tx_clk_lock);
|
||||||
if (wcd937x->micb_ref[micb_index] == 1) {
|
if (wcd937x->micb_ref[micb_index] == 1) {
|
||||||
snd_soc_component_update_bits(component,
|
snd_soc_component_update_bits(component,
|
||||||
WCD937X_DIGITAL_CDC_DIG_CLK_CTL, 0xE0, 0xE0);
|
WCD937X_DIGITAL_CDC_DIG_CLK_CTL, 0xF0, 0xF0);
|
||||||
snd_soc_component_update_bits(component,
|
snd_soc_component_update_bits(component,
|
||||||
WCD937X_DIGITAL_CDC_ANA_CLK_CTL, 0x10, 0x10);
|
WCD937X_DIGITAL_CDC_ANA_CLK_CTL, 0x10, 0x10);
|
||||||
snd_soc_component_update_bits(component,
|
snd_soc_component_update_bits(component,
|
||||||
|
@@ -1902,7 +1902,7 @@ int wcd938x_micbias_control(struct snd_soc_component *component,
|
|||||||
wcd938x->micb_ref[micb_index]++;
|
wcd938x->micb_ref[micb_index]++;
|
||||||
if (wcd938x->micb_ref[micb_index] == 1) {
|
if (wcd938x->micb_ref[micb_index] == 1) {
|
||||||
snd_soc_component_update_bits(component,
|
snd_soc_component_update_bits(component,
|
||||||
WCD938X_DIGITAL_CDC_DIG_CLK_CTL, 0xE0, 0xE0);
|
WCD938X_DIGITAL_CDC_DIG_CLK_CTL, 0xF0, 0xF0);
|
||||||
snd_soc_component_update_bits(component,
|
snd_soc_component_update_bits(component,
|
||||||
WCD938X_DIGITAL_CDC_ANA_CLK_CTL, 0x10, 0x10);
|
WCD938X_DIGITAL_CDC_ANA_CLK_CTL, 0x10, 0x10);
|
||||||
snd_soc_component_update_bits(component,
|
snd_soc_component_update_bits(component,
|
||||||
|
Reference in New Issue
Block a user