For endpoint wigdets which have set the suspend ignore flag, asoc
shouldn't mark them as dirty when ASoC suspend function is called.

Signed-off-by: Zhiwei Jiang <qq282012...@gmail.com>
---
 sound/soc/soc-dapm.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sound/soc/soc-dapm.c b/sound/soc/soc-dapm.c
index a5178845065b..68c49090f561 100644
--- a/sound/soc/soc-dapm.c
+++ b/sound/soc/soc-dapm.c
@@ -278,7 +278,7 @@ void dapm_mark_endpoints_dirty(struct snd_soc_card *card)
        mutex_lock(&card->dapm_mutex);
 
        list_for_each_entry(w, &card->widgets, list) {
-               if (w->is_ep) {
+               if (w->is_ep && !w->ignore_suspend) {
                        dapm_mark_dirty(w, "Rechecking endpoints");
                        if (w->is_ep & SND_SOC_DAPM_EP_SINK)
                                dapm_widget_invalidate_output_paths(w);
-- 
2.19.0

Reply via email to