ASoC: SOF: IPC4: get pipeline priority from topology
authorRander Wang <rander.wang@intel.com>
Fri, 6 Oct 2023 08:44:53 +0000 (11:44 +0300)
committerMark Brown <broonie@kernel.org>
Fri, 6 Oct 2023 11:30:22 +0000 (12:30 +0100)
Driver set pipeline priority according to priority setting in topology.

Reviewed-by: Péter Ujfalusi <peter.ujfalusi@linux.intel.com>
Signed-off-by: Rander Wang <rander.wang@intel.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://lore.kernel.org/r/20231006084454.19170-2-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sof/ipc4-topology.c

index af90c14ad57af7a6d252f5fd5a06267b1d04ea79..b24a64377f687463c74da373257759f0cbce1665 100644 (file)
@@ -44,6 +44,8 @@ static const struct sof_topology_token ipc4_sched_tokens[] = {
                offsetof(struct sof_ipc4_pipeline, use_chain_dma)},
        {SOF_TKN_SCHED_CORE, SND_SOC_TPLG_TUPLE_TYPE_WORD, get_token_u32,
                offsetof(struct sof_ipc4_pipeline, core_id)},
+       {SOF_TKN_SCHED_PRIORITY, SND_SOC_TPLG_TUPLE_TYPE_WORD, get_token_u32,
+               offsetof(struct sof_ipc4_pipeline, priority)},
 };
 
 static const struct sof_topology_token pipeline_tokens[] = {
@@ -683,9 +685,6 @@ static int sof_ipc4_widget_setup_comp_pipeline(struct snd_sof_widget *swidget)
                goto err;
        }
 
-       /* TODO: Get priority from topology */
-       pipeline->priority = 0;
-
        dev_dbg(scomp->dev, "pipeline '%s': id %d, pri %d, core_id %u, lp mode %d\n",
                swidget->widget->name, swidget->pipeline_id,
                pipeline->priority, pipeline->core_id, pipeline->lp_mode);