[alsa-devel] [PATCH 2/3] ASoC: tlv320aic3x: Add delay after power on and register sync
Peter Ujfalusi
peter.ujfalusi at ti.com
Fri Dec 23 10:21:11 CET 2016
When the codec is powered on, it's registers are in reset state as the
power off will do a soft reset of the codec.
After the register sync we need to add delay to remove the pop-noise on
stream start.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi at ti.com>
---
sound/soc/codecs/tlv320aic3x.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/sound/soc/codecs/tlv320aic3x.c b/sound/soc/codecs/tlv320aic3x.c
index 7b6924e19021..bc220f83dd1f 100644
--- a/sound/soc/codecs/tlv320aic3x.c
+++ b/sound/soc/codecs/tlv320aic3x.c
@@ -1393,6 +1393,12 @@ static int aic3x_set_power(struct snd_soc_codec *codec, int power)
snd_soc_write(codec, AIC3X_PLL_PROGC_REG, pll_c);
snd_soc_write(codec, AIC3X_PLL_PROGD_REG, pll_d);
}
+
+ /*
+ * Delay is needed to reduce pop-noise after syncing back the
+ * registers
+ */
+ mdelay(50);
} else {
/*
* Do soft reset to this codec instance in order to clear
--
2.11.0
More information about the Alsa-devel
mailing list