diff options
| author | Ranjani Sridharan <ranjani.sridharan@linux.intel.com> | 2023-11-24 15:57:42 +0200 |
|---|---|---|
| committer | Mark Brown <broonie@kernel.org> | 2023-11-24 14:15:06 +0000 |
| commit | 0376b995bb7a65fb0c056f3adc5e9695ad0c1805 (patch) | |
| tree | 2b5d9c5956315a7b1ae4f51b961a411e3cc21ba4 /sound/soc/sof/sof-audio.h | |
| parent | 347ecf29a68cc8958fbcbd26ef410d07fe9d82f4 (diff) | |
| download | linux-0376b995bb7a65fb0c056f3adc5e9695ad0c1805.tar.gz linux-0376b995bb7a65fb0c056f3adc5e9695ad0c1805.tar.bz2 linux-0376b995bb7a65fb0c056f3adc5e9695ad0c1805.zip | |
ASoC: SOF: ipc4-topology: Add core_mask in struct snd_sof_pipeline
With IPC4, a pipeline may contain multiple modules in the data
processing domain and they can be scheduled to run on different cores.
Add a new field in struct snd_sof_pipeline to keep track of all the
cores that are associated with the modules in the pipeline. Set the
pipeline core mask for IPC3 when initializing the pipeline widget IPC
structure. For IPC4, set the core mark when initializing the pipeline
widget and initializing processing modules in the data processing domain.
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>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20231124135743.24674-2-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/sof/sof-audio.h')
| -rw-r--r-- | sound/soc/sof/sof-audio.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sound/soc/sof/sof-audio.h b/sound/soc/sof/sof-audio.h index 5d5eeb1a1a6f..a6d6bcd00cee 100644 --- a/sound/soc/sof/sof-audio.h +++ b/sound/soc/sof/sof-audio.h @@ -480,6 +480,7 @@ struct snd_sof_widget { * @paused_count: Count of number of PCM's that have started and have currently paused this pipeline * @complete: flag used to indicate that pipeline set up is complete. + * @core_mask: Mask containing target cores for all modules in the pipeline * @list: List item in sdev pipeline_list */ struct snd_sof_pipeline { @@ -487,6 +488,7 @@ struct snd_sof_pipeline { int started_count; int paused_count; int complete; + unsigned long core_mask; struct list_head list; }; |
