From: <Eugen.Hristev@microchip•com>
To: <ada@thorsis•com>, <linux-arm-kernel@lists•infradead.org>
Cc: sboyd@kernel•org, linux-kernel@vger•kernel.org,
mturquette@baylibre•com, alexandre.belloni@bootlin•com,
linux-clk@vger•kernel.org
Subject: Re: [PATCH] clk: at91: allow 24 Mhz clock as input for PLL
Date: Thu, 12 Sep 2019 11:28:00 +0000 [thread overview]
Message-ID: <a208cec2-7aa6-e6e8-e6e0-f37769273d5d@microchip.com> (raw)
In-Reply-To: <30755021.BkS3ObC0RA@ada>
On 12.09.2019 14:06, Alexander Dahl wrote:
>
> Hello,
>
> out of curiosity: The SAMA5D27-SOM1-EK board has a 24 MHz crystal, that is
> also what /sys/kernel/debug/clk/clk_summary says and the board runs without
> obvious problems. What is this change improving in real practice then?
>
The board works, but, the characteristics of the PLL are incorrect.
This can lead to unwanted behavior, like calculating wrong minimum
values for multipliers, or other issues
In this code here in clk-pll.c for example
if (parent_rate > characteristics->input.max) {
tmpdiv = DIV_ROUND_UP(parent_rate,
characteristics->input.max);
if (tmpdiv > PLL_DIV_MAX)
return -ERANGE;
if (tmpdiv > mindiv)
mindiv = tmpdiv;
}
The divisor is capped by checks, but at another possible requested
parent rate, this may lead to something wrong, like here, the minimum
divisor might be greater than what is the real possible one. So in some
cases it can happen that unwanted results occur.
We may consider at some points to rely on these values more, so, it's
obvious that they should be correct in the characteristics
So short answer: no improve in your case , where the rates required are
around 492 Mhz cpu/132 mhz bus (IIRC), but the characteristics need to
be correct to cover all possible cases.
Eugen
> Greets
> Alex
>
> Am Mittwoch, 11. September 2019, 06:39:20 CEST schrieb
> Eugen.Hristev@microchip•com:
>> From: Eugen Hristev <eugen.hristev@microchip•com>
>>
>> The PLL input range needs to be able to allow 24 Mhz crystal as input
>> Update the range accordingly in plla characteristics struct
>>
>> Signed-off-by: Eugen Hristev <eugen.hristev@microchip•com>
>> ---
>> drivers/clk/at91/sama5d2.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/clk/at91/sama5d2.c b/drivers/clk/at91/sama5d2.c
>> index 6509d09..0de1108 100644
>> --- a/drivers/clk/at91/sama5d2.c
>> +++ b/drivers/clk/at91/sama5d2.c
>> @@ -21,7 +21,7 @@ static const struct clk_range plla_outputs[] = {
>> };
>>
>> static const struct clk_pll_characteristics plla_characteristics = {
>> - .input = { .min = 12000000, .max = 12000000 },
>> + .input = { .min = 12000000, .max = 24000000 },
>> .num_output = ARRAY_SIZE(plla_outputs),
>> .output = plla_outputs,
>> .icpll = plla_icpll,
>
>
>
>
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists•infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2019-09-12 11:28 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-09-11 6:39 [PATCH] clk: at91: allow 24 Mhz clock as input for PLL Eugen.Hristev
2019-09-11 7:03 ` Nicolas.Ferre
2019-09-12 11:06 ` Alexander Dahl
2019-09-12 11:28 ` Eugen.Hristev [this message]
2019-09-16 19:52 ` Stephen Boyd
2019-09-17 5:59 ` Eugen.Hristev
2019-09-18 5:00 ` Stephen Boyd
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=a208cec2-7aa6-e6e8-e6e0-f37769273d5d@microchip.com \
--to=eugen.hristev@microchip$(echo .)com \
--cc=ada@thorsis$(echo .)com \
--cc=alexandre.belloni@bootlin$(echo .)com \
--cc=linux-arm-kernel@lists$(echo .)infradead.org \
--cc=linux-clk@vger$(echo .)kernel.org \
--cc=linux-kernel@vger$(echo .)kernel.org \
--cc=mturquette@baylibre$(echo .)com \
--cc=sboyd@kernel$(echo .)org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox