[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <684332700f8be9f77348a510eb6eba22@walle.cc>
Date: Fri, 12 Mar 2021 13:30:02 +0100
From: Michael Walle <michael@...le.cc>
To: Mark Brown <broonie@...nel.org>
Cc: Sameer Pujar <spujar@...dia.com>, alsa-devel@...a-project.org,
devicetree@...r.kernel.org, jonathanh@...dia.com,
kuninori.morimoto.gx@...esas.com, linux-kernel@...r.kernel.org,
linux-tegra@...r.kernel.org, robh@...nel.org, sharadg@...dia.com,
thierry.reding@...il.com
Subject: Re: [PATCH 1/3] ASoC: simple-card-utils: Fix device module clock
Am 2021-03-12 13:04, schrieb Mark Brown:
> On Fri, Mar 12, 2021 at 01:01:41PM +0100, Michael Walle wrote:
>> Am 2021-03-12 12:35, schrieb Mark Brown:
>
>> > If the card has a clock API clock as sysclk then set_sysclk(() should
>> > be configuring that clock.
>
>> What do you mean by "the card". The simple-audio-card itself?
>
>> Take a look at:
>> https://elixir.bootlin.com/linux/v5.12-rc2/source/arch/arm64/boot/dts/freescale/fsl-ls1028a-kontron-sl28-var3-ads2.dts#L29
>
>> Does the card has a clock? IMHO the WM8904 codec has a clock, but not
>> the audio card.
>
> The clock on the CODEC, which the card configures. The CODEC should be
> passing on the configuration to the clock API.
Sorry, I don't understand.
The card calls set_sysclk(), which eventually ends up in the codec.
The codec therefore, could figure out if it needs to configure the
clock or if it can use its internal FLL.
Is that what you mean?
But the set_sysclk() of the codec isn't even called, because the
card itself already tries to call clk_set_rate() on the Codec's MCLK,
which returns with an error [0].
[0]
https://elixir.bootlin.com/linux/v5.12-rc2/source/sound/soc/generic/simple-card-utils.c#L265
-michael
Powered by blists - more mailing lists