[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <a1ec388def4febd9af6ef477245ef2d3@walle.cc>
Date: Tue, 27 Apr 2021 17:29:35 +0200
From: Michael Walle <michael@...le.cc>
To: Mark Brown <broonie@...nel.org>
Cc: Guillaume Tucker <guillaume.tucker@...labora.com>,
kernelci-results@...ups.io,
Kuninori Morimoto <kuninori.morimoto.gx@...esas.com>,
Heiko Thiery <heiko.thiery@...il.com>,
alsa-devel@...a-project.org, Jaroslav Kysela <perex@...ex.cz>,
Liam Girdwood <lgirdwood@...il.com>,
Takashi Iwai <tiwai@...e.com>,
Stephan Gerhold <stephan@...hold.net>,
Thierry Reding <treding@...dia.com>,
Jon Hunter <jonathanh@...dia.com>, linux-kernel@...r.kernel.org
Subject: Re: broonie-sound/for-next bisection:
baseline.bootrr.asoc-simple-card-probed on kontron-sl28-var3-ads2
Am 2021-04-27 16:16, schrieb Michael Walle:
> Am 2021-04-27 15:57, schrieb Mark Brown:
>> On Tue, Apr 27, 2021 at 03:43:42PM +0200, Michael Walle wrote:
>>> Am 2021-04-27 14:51, schrieb Guillaume Tucker:
>>> > On 27/04/2021 11:19, Mark Brown wrote:
>>> > > On Tue, Apr 27, 2021 at 07:28:34AM +0900, Kuninori Morimoto wrote:
>>
>>> > > > > > If so, all sai1 - sai6 are using "fsl,vf610-sai",
>>> > > > > > all saiX doesn't have .name. I think it should have different name.
>>> > > > > > In your case, at least, sai5 / sai6 needs to have
>
> Where does that (null) come from? I've briefly tried the following
> patch and I'd assume I get a duplicate for "abc-wm8904-hifi", but I
> still
> get the old (null)-wm8904-hifi.
>
> diff --git a/sound/soc/fsl/fsl_sai.c b/sound/soc/fsl/fsl_sai.c
> index 407a45e48eee..36280008b5c6 100644
> --- a/sound/soc/fsl/fsl_sai.c
> +++ b/sound/soc/fsl/fsl_sai.c
> @@ -1081,6 +1081,7 @@ static int fsl_sai_probe(struct platform_device
> *pdev)
> sai->cpu_dai_drv.symmetric_rate = 1;
> sai->cpu_dai_drv.symmetric_channels = 1;
> sai->cpu_dai_drv.symmetric_sample_bits = 1;
> + sai->cpu_dai_drv.name = "abc";
>
> if (of_find_property(np, "fsl,sai-synchronous-rx", NULL) &&
> of_find_property(np, "fsl,sai-asynchronous", NULL)) {
Ok here it is whats going on:
We have a simple-audio-card. We use
freescale/fsl-ls1028a-kontron-sl28-var3-ads2.dts. The codec name is
parsed correctly and set to either f140000.audio-controller or
f150000.audio-controller. Thus have different names. _But_ later
asoc_simple_canonicalize_cpu() will reset the dai_name pointer to
NULL in simple_parse_node() if "single" is 1 and then we end up
having two links with the same name.
Which begs the two questions:
(1) What is "single" actually and when should it be 1?
(2) If single is 1, then the sysfs file will be named
"(null)-codec-name".
Do we want that?
I guess there is a reason for it to be set to NULL, see [1].
-michael
[1]
https://elixir.bootlin.com/linux/v5.12/source/sound/soc/generic/simple-card-utils.c#L420
Powered by blists - more mailing lists