ASoC: SOF: topology: Use partial match for connecting DAI link and DAI widget
authorRanjani Sridharan <ranjani.sridharan@linux.intel.com>
Fri, 26 May 2023 20:41:48 +0000 (15:41 -0500)
committerMark Brown <broonie@kernel.org>
Tue, 30 May 2023 13:11:03 +0000 (14:11 +0100)
This allows setting shorter names for the widget stream names in
topology. For example, in the case of HDA Analog DAI link, the stream
name is "Analog Playback and Capture". But it is enough to match "Analog"
in the DAI link stream name with a widget's stream name. This is needed
to set more meaningful names for the DAI widgets using the stream name
in topology.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Link: https://lore.kernel.org/r/20230526204149.456068-3-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sof/topology.c

index d3d536b0a8f54d8516d360e0c0b80f7cc8fcc022..b572c809581dd9cb2b4b8acf1205dd82824c7ff4 100644 (file)
@@ -1073,7 +1073,7 @@ static int sof_connect_dai_widget(struct snd_soc_component *scomp,
        list_for_each_entry(rtd, &card->rtd_list, list) {
                /* does stream match DAI link ? */
                if (!rtd->dai_link->stream_name ||
-                   strcmp(w->sname, rtd->dai_link->stream_name))
+                   !strstr(rtd->dai_link->stream_name, w->sname))
                        continue;
 
                for_each_rtd_cpu_dais(rtd, i, cpu_dai) {