OSDN Git Service

ASoC: soc-core: snd_soc_dai_digital_mute() for both CPU/Codec
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Fri, 17 Jul 2020 00:22:02 +0000 (09:22 +0900)
committerMark Brown <broonie@kernel.org>
Fri, 17 Jul 2020 13:22:56 +0000 (14:22 +0100)
snd_soc_dai_digital_mute() is used for both CPU and Codec.
For example, soc_pcm_prepare() / soc_pcm_hw_free() are caring
both CPU and Codec.

But soc_resume_deferred() / snd_soc_suspend() are not.
This patch cares it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Reviewed-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Link: https://lore.kernel.org/r/87ft9r2dqr.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/soc-core.c

index 7c58e45..defd96b 100644 (file)
@@ -548,7 +548,7 @@ int snd_soc_suspend(struct device *dev)
                if (rtd->dai_link->ignore_suspend)
                        continue;
 
-               for_each_rtd_codec_dais(rtd, i, dai) {
+               for_each_rtd_dais(rtd, i, dai) {
                        if (snd_soc_dai_stream_active(dai, playback))
                                snd_soc_dai_digital_mute(dai, 1, playback);
                }
@@ -687,7 +687,7 @@ static void soc_resume_deferred(struct work_struct *work)
                if (rtd->dai_link->ignore_suspend)
                        continue;
 
-               for_each_rtd_codec_dais(rtd, i, dai) {
+               for_each_rtd_dais(rtd, i, dai) {
                        if (snd_soc_dai_stream_active(dai, playback))
                                snd_soc_dai_digital_mute(dai, 0, playback);
                }