ALSA: ASoC: Use codec digital mute when stopping playback

Muting the DAC masks artefacts introduced as the digital stream shuts
down, for example when the input stops being clocked.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
This commit is contained in:
Mark Brown 2008-09-06 18:33:24 +01:00 committed by Jaroslav Kysela
parent 3e860846d7
commit 6010b2da1f

View file

@ -340,6 +340,12 @@ static int soc_codec_close(struct snd_pcm_substream *substream)
} }
codec->active--; codec->active--;
/* Muting the DAC suppresses artifacts caused during digital
* shutdown, for example from stopping clocks.
*/
if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK)
snd_soc_dai_digital_mute(codec_dai, 1);
if (cpu_dai->ops.shutdown) if (cpu_dai->ops.shutdown)
cpu_dai->ops.shutdown(substream); cpu_dai->ops.shutdown(substream);