Message ID | 20220920150107.2090695-3-pierre-louis.bossart@linux.intel.com |
---|---|
State | New |
Headers | show |
Series | ASoC: SOF: sof-audio: fix prepare/unprepare | expand |
diff --git a/sound/soc/sof/sof-audio.c b/sound/soc/sof/sof-audio.c index 71cea83889fb0..62092e2d609c7 100644 --- a/sound/soc/sof/sof-audio.c +++ b/sound/soc/sof/sof-audio.c @@ -271,8 +271,8 @@ sof_unprepare_widgets_in_path(struct snd_sof_dev *sdev, struct snd_soc_dapm_widg struct snd_sof_widget *swidget = widget->dobj.private; struct snd_soc_dapm_path *p; - /* it is already unprepared */ - if (!swidget->prepared) + /* return if the widget is in use or if it is already unprepared */ + if (!swidget->prepared || swidget->use_count > 1) return; if (widget_ops[widget->id].ipc_unprepare)