Hi Morimoto-san, On 29/03/2023 03:21, Kuninori Morimoto wrote: > From: Kuninori Morimoto <kuninori.morimoto.gx@xxxxxxxxxxx> > > On SOF, many topology is assuming dai_link->platform exists, and is > allowed to be overwritten on each link_load(). > This patch restore the removed dai_link->platform for SOF, and add > the comment. Thank you, it works now. Tested-by: Peter Ujfalusi <peter.ujfalusi@xxxxxxxxxxxxxxx> > Fixes: e7098ba9b378 ("ASoC: soc-topology.c: remove unnecessary dai_link->platform") > Reported-by: Peter Ujfalusi <peter.ujfalusi@xxxxxxxxxxxxxxx> > Link: https://lore.kernel.org/r/87jzz7jczp.wl-kuninori.morimoto.gx@xxxxxxxxxxx > Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@xxxxxxxxxxx> > --- > sound/soc/soc-topology.c | 12 ++++++++++-- > 1 file changed, 10 insertions(+), 2 deletions(-) > > diff --git a/sound/soc/soc-topology.c b/sound/soc/soc-topology.c > index be9849749713..d0aca6b9058b 100644 > --- a/sound/soc/soc-topology.c > +++ b/sound/soc/soc-topology.c > @@ -1685,8 +1685,8 @@ static int soc_tplg_fe_link_create(struct soc_tplg *tplg, > struct snd_soc_dai_link_component *dlc; > int ret; > > - /* link + cpu + codec */ > - link = devm_kzalloc(tplg->dev, sizeof(*link) + (2 * sizeof(*dlc)), GFP_KERNEL); > + /* link + cpu + codec + platform */ > + link = devm_kzalloc(tplg->dev, sizeof(*link) + (3 * sizeof(*dlc)), GFP_KERNEL); > if (link == NULL) > return -ENOMEM; > > @@ -1724,6 +1724,14 @@ static int soc_tplg_fe_link_create(struct soc_tplg *tplg, > link->codecs->name = "snd-soc-dummy"; > link->codecs->dai_name = "snd-soc-dummy-dai"; > > + /* > + * Many topology is assuming link has Platform. > + * This might be overwritten at soc_tplg_dai_link_load(). > + */ > + link->platforms = &dlc[2]; > + link->platforms->name = "snd-soc-dummy"; > + link->num_platforms = 1; > + > /* enable DPCM */ > link->dynamic = 1; > link->ignore_pmdown_time = 1; -- Péter