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

Commit 1948c469 authored by Soumya Managoli's avatar Soumya Managoli Committed by Gerrit - the friendly Code Review server
Browse files

ASoC: sdm660_cdc: Fix for low spkr volume post SSR



Modify lineout PA teardown sequence to reset RX_LO_EN_CTL
register as per HW sequence.
Change based on commit: 7ccfaadc92d

Change-Id: Idab557947a43ab7d66ff8d83ac1ffeee9b2031ec
Signed-off-by: default avatarSoumya Managoli <smanag@codeaurora.org>
parent 97b225ae
Loading
Loading
Loading
Loading
+3 −7
Original line number Diff line number Diff line
@@ -2858,8 +2858,6 @@ static int msm_anlg_cdc_lo_dac_event(struct snd_soc_dapm_widget *w,
			MSM89XX_PMIC_ANALOG_RX_LO_DAC_CTL, 0x80, 0x80);
		snd_soc_update_bits(codec,
			MSM89XX_PMIC_ANALOG_RX_LO_DAC_CTL, 0x08, 0x00);
		snd_soc_update_bits(codec,
			MSM89XX_PMIC_ANALOG_RX_LO_EN_CTL, 0x40, 0x40);
		break;
	case SND_SOC_DAPM_POST_PMD:
		/* Wait for 20ms before powerdown of lineout_dac */
@@ -2872,8 +2870,6 @@ static int msm_anlg_cdc_lo_dac_event(struct snd_soc_dapm_widget *w,
			MSM89XX_PMIC_ANALOG_RX_LO_DAC_CTL, 0x08, 0x00);
		snd_soc_update_bits(codec,
			MSM89XX_PMIC_ANALOG_RX_LO_EN_CTL, 0x80, 0x00);
		snd_soc_update_bits(codec,
			MSM89XX_PMIC_ANALOG_RX_LO_EN_CTL, 0x40, 0x00);
		snd_soc_update_bits(codec,
			MSM89XX_PMIC_ANALOG_RX_LO_EN_CTL, 0x20, 0x00);
		snd_soc_update_bits(codec,
@@ -3255,7 +3251,7 @@ static int msm_anlg_cdc_codec_enable_lo_pa(struct snd_soc_dapm_widget *w,
		msm_anlg_cdc_dig_notifier_call(codec,
				       DIG_CDC_EVENT_RX3_MUTE_OFF);
		break;
	case SND_SOC_DAPM_POST_PMD:
	case SND_SOC_DAPM_PRE_PMD:
		msm_anlg_cdc_dig_notifier_call(codec,
				       DIG_CDC_EVENT_RX3_MUTE_ON);
		break;
@@ -3385,8 +3381,8 @@ static const struct snd_soc_dapm_widget msm_anlg_cdc_dapm_widgets[] = {
			SND_SOC_DAPM_PRE_PMU | SND_SOC_DAPM_POST_PMU |
			SND_SOC_DAPM_PRE_PMD | SND_SOC_DAPM_POST_PMD),
	SND_SOC_DAPM_PGA_E("LINEOUT PA", MSM89XX_PMIC_ANALOG_RX_LO_EN_CTL,
			5, 0, NULL, 0, msm_anlg_cdc_codec_enable_lo_pa,
			SND_SOC_DAPM_POST_PMU | SND_SOC_DAPM_POST_PMD),
			6, 0, NULL, 0, msm_anlg_cdc_codec_enable_lo_pa,
			SND_SOC_DAPM_POST_PMU | SND_SOC_DAPM_PRE_PMD),

	SND_SOC_DAPM_MUX("EAR_S", SND_SOC_NOPM, 0, 0, ear_pa_mux),
	SND_SOC_DAPM_MUX("SPK", SND_SOC_NOPM, 0, 0, spkr_mux),