From mboxrd@z Thu Jan 1 00:00:00 1970 From: Kuninori Morimoto Subject: Re: [PATCH v2 116/146] ASoC: sof: use modern dai_link style Date: 27 Jun 2019 09:52:54 +0900 Message-ID: <874l4bkg16.wl-kuninori.morimoto.gx@renesas.com> References: <87h893mkvi.wl-kuninori.morimoto.gx@renesas.com> <87sgsnfjge.wl-kuninori.morimoto.gx@renesas.com> Mime-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from relmlie5.idc.renesas.com (relmlor1.renesas.com [210.160.252.171]) by alsa1.perex.cz (Postfix) with ESMTP id 9C15BF8070C for ; Thu, 27 Jun 2019 02:52:57 +0200 (CEST) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: alsa-devel-bounces@alsa-project.org Sender: "Alsa-devel" To: Daniel Baluta Cc: Linux-ALSA , "Sridharan, Ranjani" , Liam Girdwood , Pierre-Louis Bossart , paul.olaru@nxp.com, Mark Brown , Daniel Baluta List-Id: alsa-devel@alsa-project.org 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); }