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);