ASoC: ssm2602: Fix ADC powerup sequencing
authorPhilipp Zabel <p.zabel@pengutronix.de>
Wed, 6 Feb 2019 15:29:47 +0000 (16:29 +0100)
committerMark Brown <broonie@kernel.org>
Wed, 6 Feb 2019 15:46:06 +0000 (15:46 +0000)
commit37768e3917405e82611af8e693ccac1a20df38b5
tree144f39982ee1de01ef6dc562a0de84757511e7d4
parentcf17a5ffd27234371d10748bf1c716ef172877f3
ASoC: ssm2602: Fix ADC powerup sequencing

According to the ssm2603 data sheet (control register sequencing), the
digital core should be activated only after all necessary bits in the
power register are enabled, and a delay determined by the decoupling
capacitor on the VMID pin has passed. If the digital core is activated
too early, or even before the ADC is powered up, audible artifacts
appear at the beginning of the recorded signal.

The digital core is also needed for playback, so when recording starts
it may already be enabled. This means we cannot get the power sequence
correct when we want to be able to start recording after playback.

As a workaround put the MIC mute switch into the DAPM routes. This
way we can keep the recording disabled until the MIC Bias has settled
and thus get rid of audible artifacts.

Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
m.felsch@pengutronix.de: adapt commit message
m.felsch@pengutronix.de: drop of configuration as mentioned by Mark:
 https://patchwork.kernel.org/patch/10407449/
Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/codecs/ssm2602.c