Re: [PATCH v2 0/8] clk: at91: adapt for dvfs
From: Claudiu.Beznea
Date: Thu Nov 05 2020 - 09:48:52 EST
Hi,
Please ignore this series for the moment as I will have to run few more
tests on it. Sorry for the noise!
Thank you,
Claudiu Beznea
On 04.11.2020 19:45, Claudiu Beznea wrote:
> Hi,
>
> SAMA7G5 is capable of DVFS. The supported CPU clock frequencies could be
> obtained from CPU PLL. The hardware block diagram for clock feeding the
> CPU is as follows:
>
> +--------+
> +-->|divider1|--> CPU clock
> | +--------+
> +--------+ +----------+ | +--------+
> |CPU PLL |-->|prescaller|--+-->|divider0|--> MCK0 clock
> +--------+ +----------+ +--------+
>
> When switching CPU clock frequencies the MCK0 is also changed by DVFS
> driver to avoid its over/under clocking (depending on CPU clock frequency
> requested by DVFS algorithms). Some of IPs feed by MCK0 are MCK0 glich
> aware, some are not. For this MCK0 was removed from the parents list of
> the IPs which are not MCK0 glitch aware (patch 5/8).
>
> This series adapt AT91 clocks (mostly sam9x60-pll and master clock drivers)
> so that runtime changes of these clocks to be allowed.
>
> The CPU clock was registered from prescaller clock (see above diagram)
> and no software control has been added for divider1 because the frequencies
> supported by SAMA7G5's CPU could be directly obtained from CPU PLL +
> prescaller.
>
> On top of this series I also added a fix for sama7g5.c code (patch 1/8).
> Please let me know if you would like me to send this one separtely (it
> would be nice if this fix could be integrated in 5.10).
>
> Thank you,
> Claudiu Beznea
>
> Changes in v2:
> - s/at91rm9200_mck_lock/at91sam9260_mck_lock in patch 7/8
>
> Claudiu Beznea (6):
> clk: at91: sama7g5: fix compilation error
> clk: at91: clk-sam9x60-pll: allow runtime changes for pll
> clk: at91: sama7g5: remove mck0 from parent list of other clocks
> clk: at91: sama7g5: decrease lower limit for MCK0 rate
> clk: at91: clk-master: re-factor master clock
> clk: at91: sama7g5: register cpu clock
>
> Eugen Hristev (2):
> dt-bindings: clock: at91: add sama7g5 pll defines
> clk: at91: sama7g5: allow SYS and CPU PLLs to be exported and
> referenced in DT
>
> drivers/clk/at91/at91rm9200.c | 20 ++-
> drivers/clk/at91/at91sam9260.c | 24 ++-
> drivers/clk/at91/at91sam9g45.c | 30 ++--
> drivers/clk/at91/at91sam9n12.c | 34 ++--
> drivers/clk/at91/at91sam9rl.c | 22 ++-
> drivers/clk/at91/at91sam9x5.c | 27 +++-
> drivers/clk/at91/clk-master.c | 323 +++++++++++++++++++++++++++++++------
> drivers/clk/at91/clk-sam9x60-pll.c | 102 ++++++++++--
> drivers/clk/at91/dt-compat.c | 15 +-
> drivers/clk/at91/pmc.h | 20 ++-
> drivers/clk/at91/sam9x60.c | 35 ++--
> drivers/clk/at91/sama5d2.c | 41 +++--
> drivers/clk/at91/sama5d3.c | 37 +++--
> drivers/clk/at91/sama5d4.c | 39 +++--
> drivers/clk/at91/sama7g5.c | 139 +++++++++-------
> include/dt-bindings/clock/at91.h | 11 ++
> 16 files changed, 692 insertions(+), 227 deletions(-)
>