From 6b3260435bf574a9b8e9c0ebfa4beeb01058a9ce Mon Sep 17 00:00:00 2001 From: Mark Brown Date: Sat, 6 Sep 2008 18:33:24 +0100 Subject: [PATCH] --- yaml --- r: 111000 b: refs/heads/master c: 6010b2da1f11752dd58191423fc9878b0ce420c8 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/sound/soc/soc-core.c | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 1d5ad54f18ba..75086e3e5f1c 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 3e860846d7f44993ded9b4fbf36e7b051b86df08 +refs/heads/master: 6010b2da1f11752dd58191423fc9878b0ce420c8 diff --git a/trunk/sound/soc/soc-core.c b/trunk/sound/soc/soc-core.c index 1563ceedf61a..ad381138fc2e 100644 --- a/trunk/sound/soc/soc-core.c +++ b/trunk/sound/soc/soc-core.c @@ -340,6 +340,12 @@ static int soc_codec_close(struct snd_pcm_substream *substream) } 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) cpu_dai->ops.shutdown(substream);