Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 32bf7ea9 authored by Laxminath Kasam's avatar Laxminath Kasam
Browse files

ASoC: msm8x16-wcd: Avoid cross talk during IN2 record



While reading data via IN2 path, cross talk is observed.
To reduce it, we need  to set 0x142 register to 0x2
at powerup for IN2 path.

CRs-Fixed: 668998
Change-Id: If2815134fe493196f2fded83c6ac789776cc4e5a
Signed-off-by: default avatarLaxminath Kasam <lkasam@codeaurora.org>
parent b60fa5d7
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -1500,6 +1500,9 @@ static int msm8x16_wcd_codec_enable_adc(struct snd_soc_dapm_widget *w,
	switch (event) {
	case SND_SOC_DAPM_PRE_PMU:
		msm8x16_wcd_codec_enable_adc_block(codec, 1);
		if (w->reg == MSM8X16_WCD_A_ANALOG_TX_2_EN)
			snd_soc_update_bits(codec,
			MSM8X16_WCD_A_ANALOG_MICB_1_CTL, 0x02, 0x02);
		snd_soc_update_bits(codec, adc_reg, 1 << init_bit_shift,
				1 << init_bit_shift);
		if (w->reg == MSM8X16_WCD_A_ANALOG_TX_1_EN)
@@ -1520,6 +1523,9 @@ static int msm8x16_wcd_codec_enable_adc(struct snd_soc_dapm_widget *w,
		break;
	case SND_SOC_DAPM_POST_PMD:
		msm8x16_wcd_codec_enable_adc_block(codec, 0);
		if (w->reg == MSM8X16_WCD_A_ANALOG_TX_2_EN)
			snd_soc_update_bits(codec,
			MSM8X16_WCD_A_ANALOG_MICB_1_CTL, 0x02, 0x00);
		if (w->reg == MSM8X16_WCD_A_ANALOG_TX_1_EN)
			snd_soc_update_bits(codec,
				MSM8X16_WCD_A_DIGITAL_CDC_CONN_TX1_CTL,