[alsa-devel] [PATCH v2 116/146] ASoC: sof: use modern dai_link style

Kuninori Morimoto kuninori.morimoto.gx at renesas.com
Thu Jun 27 02:52:54 CEST 2019


Hi Daniel

Thank you for feedback and sorry for bother you

> > @@ -2708,7 +2705,11 @@ static int sof_link_load(struct snd_soc_component *scomp, int index,
> >         int ret;
> >         int i = 0;
> >
> > -       link->platform_name = dev_name(sdev->dev);
> > +       if (!link->platforms) {
> > +               dev_err(sdev->dev, "error: no platforms\n");
> > +               return -EINVAL;
> 
> Why do we need this check? With linux-next this check fails for me.

I don't remember but some sof might use without platform it I thought.
But, current ALSA SoC can handle NULL platform today.
Maybe/Maybe not support timing issue ?

> diff --git a/sound/soc/soc-topology.c b/sound/soc/soc-topology.c
> index f485f7f751a1..ee73318135fc 100644
> --- a/sound/soc/soc-topology.c
> +++ b/sound/soc/soc-topology.c
> @@ -1883,7 +1883,7 @@ static int soc_tplg_fe_link_create(struct soc_tplg *tplg,
>         int ret;
> 
>         /* link + cpu + codec */
> -       link = kzalloc(sizeof(*link) + (2 * sizeof(*dlc)), GFP_KERNEL);
> +       link = kzalloc(sizeof(*link) + (3 * sizeof(*dlc)), GFP_KERNEL);
>         if (link == NULL)
>                 return -ENOMEM;
> 
> @@ -1891,9 +1891,11 @@ static int soc_tplg_fe_link_create(struct soc_tplg *tplg,
> 
>         link->cpus      = &dlc[0];
>         link->codecs    = &dlc[1];
> +       link->platforms = &dlc[2];
> 
>         link->num_cpus   = 1;
>         link->num_codecs = 1;
> +       link->num_platforms = 1;
> 
> Can you please help me figure this out?

I think this is same as

	3e6de89409bf7ad149bfb05dd0dce6c5678ea0a8
	("ASoC: soc-topology: fix modern dai link style")

Above one is also OK, but now we can use NULL platform.
I'm not familiar with SOF, but maybe like this code instead
of having dummy platform can salve your issue ?

	if (link->platforms) {
		link->platforms->name = dev_name(sdev->dev);
	}



More information about the Alsa-devel mailing list