diff mbox series

[10/11] ASoC: SOF: clarify use of widget complete flag

Message ID 20220426171743.171061-11-ranjani.sridharan@linux.intel.com (mailing list archive)
State Accepted
Commit 463a809ba8efa127484d16ff588e3bcdb63fe41e
Headers show
Series ASoC: SOF: Miscellaneous preparatory patches for IPC4 | expand

Commit Message

Ranjani Sridharan April 26, 2022, 5:17 p.m. UTC
Currently, the complete flag is used only for the snd_soc_dapm_scheduler
type widgets to indicate that the pipeline has been set up. All other
widgets do not need it. Add a comment to clarify its usage and set the
complete flag to false only for the scheduler widget in
sof_widget_free().

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Péter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
---
 sound/soc/sof/sof-audio.c | 3 +--
 sound/soc/sof/sof-audio.h | 4 ++++
 2 files changed, 5 insertions(+), 2 deletions(-)
diff mbox series

Patch

diff --git a/sound/soc/sof/sof-audio.c b/sound/soc/sof/sof-audio.c
index 07576ed3c4fa..f7c9e5db3d9e 100644
--- a/sound/soc/sof/sof-audio.c
+++ b/sound/soc/sof/sof-audio.c
@@ -58,8 +58,6 @@  int sof_widget_free(struct snd_sof_dev *sdev, struct snd_sof_widget *swidget)
 			err = ret;
 	}
 
-	swidget->complete = 0;
-
 	/*
 	 * free the scheduler widget (same as pipe_widget) associated with the current swidget.
 	 * skip for static pipelines
@@ -68,6 +66,7 @@  int sof_widget_free(struct snd_sof_dev *sdev, struct snd_sof_widget *swidget)
 		ret = sof_widget_free(sdev, swidget->pipe_widget);
 		if (ret < 0 && !err)
 			err = ret;
+		swidget->pipe_widget->complete = 0;
 	}
 
 	if (!err)
diff --git a/sound/soc/sof/sof-audio.h b/sound/soc/sof/sof-audio.h
index 5967d034188a..2db4eb5edcf5 100644
--- a/sound/soc/sof/sof-audio.h
+++ b/sound/soc/sof/sof-audio.h
@@ -327,6 +327,10 @@  struct snd_sof_widget {
 	struct snd_soc_component *scomp;
 	int comp_id;
 	int pipeline_id;
+	/*
+	 * complete flag is used to indicate that pipeline set up is complete for scheduler type
+	 * widgets. It is unused for all other widget types.
+	 */
 	int complete;
 	int use_count; /* use_count will be protected by the PCM mutex held by the core */
 	int core;