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

Commit 0c93a167 authored by Wolfram Sang's avatar Wolfram Sang Committed by Mark Brown
Browse files

ASoC: tlv320aic32x4: always enable analouge block



Register LDOCTLEN must always be initialized to clear the analog power
control bit, otherwise the analog block will stay deactivated.

Signed-off-by: default avatarWolfram Sang <w.sang@pengutronix.de>
Acked-by: default avatarJavier Martin <javier.martin@vista-silicon.com>
Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
parent 01b37e94
Loading
Loading
Loading
Loading
+5 −3
Original line number Diff line number Diff line
@@ -641,9 +641,11 @@ static int aic32x4_probe(struct snd_soc_codec *codec)
	if (aic32x4->power_cfg & AIC32X4_PWR_AVDD_DVDD_WEAK_DISABLE) {
		snd_soc_write(codec, AIC32X4_PWRCFG, AIC32X4_AVDDWEAKDISABLE);
	}
	if (aic32x4->power_cfg & AIC32X4_PWR_AIC32X4_LDO_ENABLE) {
		snd_soc_write(codec, AIC32X4_LDOCTL, AIC32X4_LDOCTLEN);
	}

	tmp_reg = (aic32x4->power_cfg & AIC32X4_PWR_AIC32X4_LDO_ENABLE) ?
			AIC32X4_LDOCTLEN : 0;
	snd_soc_write(codec, AIC32X4_LDOCTL, tmp_reg);

	tmp_reg = snd_soc_read(codec, AIC32X4_CMMODE);
	if (aic32x4->power_cfg & AIC32X4_PWR_CMMODE_LDOIN_RANGE_18_36) {
		tmp_reg |= AIC32X4_LDOIN_18_36;