diff --git a/asoc/codecs/wcd938x/wcd938x.c b/asoc/codecs/wcd938x/wcd938x.c index bde873cf8797..6dc5ec461ea9 100644 --- a/asoc/codecs/wcd938x/wcd938x.c +++ b/asoc/codecs/wcd938x/wcd938x.c @@ -695,6 +695,15 @@ static int wcd938x_codec_ear_dac_event(struct snd_soc_dapm_widget *w, if (wcd938x->ear_rx_path & EAR_RX_PATH_AUX) { snd_soc_component_update_bits(component, WCD938X_DIGITAL_CDC_AUX_GAIN_CTL, 0x01, 0x00); + snd_soc_component_update_bits(component, + WCD938X_DIGITAL_CDC_DIG_CLK_CTL, 0x04, 0x00); + } else { + snd_soc_component_update_bits(component, + WCD938X_DIGITAL_CDC_HPH_GAIN_CTL, 0x04, 0x00); + snd_soc_component_update_bits(component, + WCD938X_DIGITAL_CDC_DIG_CLK_CTL, 0x01, 0x00); + snd_soc_component_update_bits(component, + WCD938X_DIGITAL_CDC_COMP_CTL_0, 0x02, 0x00); } snd_soc_component_update_bits(component, WCD938X_ANA_EAR_COMPANDER_CTL, 0x80, 0x00); @@ -2763,7 +2772,6 @@ static const struct snd_kcontrol_new wcd938x_snd_controls[] = { wcd938x_get_compander, wcd938x_set_compander), SOC_SINGLE_EXT("HPHR_COMP Switch", SND_SOC_NOPM, 1, 1, 0, wcd938x_get_compander, wcd938x_set_compander), - SOC_SINGLE_EXT("LDOH Enable", SND_SOC_NOPM, 0, 1, 0, wcd938x_ldoh_get, wcd938x_ldoh_put),