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

Commit c7d910b8 authored by Eric Nelson's avatar Eric Nelson Committed by Mark Brown
Browse files

ASoC: sgtl5000: remove useless register write clearing CHRGPUMP_POWERUP

The SGTL5000_CHIP_ANA_POWER register is cached. Update the cached
value instead of writing it directly.

Patch inspired by Russell King's more colorful remarks in this
patch:
	https://github.com/SolidRun/linux-imx6-3.14/commit/dd4bf6a



Signed-off-by: default avatarEric Nelson <eric.nelson@boundarydevices.com>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
Cc: stable@vger.kernel.org
parent c517d838
Loading
Loading
Loading
Loading
+1 −7
Original line number Original line Diff line number Diff line
@@ -1151,13 +1151,7 @@ static int sgtl5000_set_power_regs(struct snd_soc_codec *codec)
		/* Enable VDDC charge pump */
		/* Enable VDDC charge pump */
		ana_pwr |= SGTL5000_VDDC_CHRGPMP_POWERUP;
		ana_pwr |= SGTL5000_VDDC_CHRGPMP_POWERUP;
	} else if (vddio >= 3100 && vdda >= 3100) {
	} else if (vddio >= 3100 && vdda >= 3100) {
		/*
		ana_pwr &= ~SGTL5000_VDDC_CHRGPMP_POWERUP;
		 * if vddio and vddd > 3.1v,
		 * charge pump should be clean before set ana_pwr
		 */
		snd_soc_update_bits(codec, SGTL5000_CHIP_ANA_POWER,
				SGTL5000_VDDC_CHRGPMP_POWERUP, 0);

		/* VDDC use VDDIO rail */
		/* VDDC use VDDIO rail */
		lreg_ctrl |= SGTL5000_VDDC_ASSN_OVRD;
		lreg_ctrl |= SGTL5000_VDDC_ASSN_OVRD;
		lreg_ctrl |= SGTL5000_VDDC_MAN_ASSN_VDDIO <<
		lreg_ctrl |= SGTL5000_VDDC_MAN_ASSN_VDDIO <<