[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20251020142434.066f53b8@donnerap.manchester.arm.com>
Date: Mon, 20 Oct 2025 14:24:34 +0100
From: Andre Przywara <andre.przywara@....com>
To: Jernej Skrabec <jernej.skrabec@...il.com>
Cc: wens@...e.org, samuel@...lland.org, mturquette@...libre.com,
sboyd@...nel.org, linux-clk@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org, linux-sunxi@...ts.linux.dev,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] clk: sunxi-ng: Mark A523 bus-r-cpucfg clock as critical
On Sun, 19 Oct 2025 19:26:47 +0200
Jernej Skrabec <jernej.skrabec@...il.com> wrote:
> bus-r-cpucfg clock is important for peripheral which takes care for
> powering CPU cores on and off. Since this operation is done by firmware
> (TF-A), mark is as critical. That way Linux won't interfere with that
> clock.
Many thanks, makes sense. I hammered /sys/devices/system/cpu/cpu<x>/online
like a 1000 times in a random loop now, and it survived - after I excluded
CPU0 from this. Offlining CPU0 works, but it doesn't come back online
again. But that's probably something in TF-A, so nothing that affects this
patch:
> Fixes: 8cea339cfb81 ("clk: sunxi-ng: add support for the A523/T527 PRCM CCU")
> Signed-off-by: Jernej Skrabec <jernej.skrabec@...il.com>
Reviewed-by: Andre Przywara <andre.przywara@....com>
Tested-by: Andre Przywara <andre.przywara@....com>
Cheers,
Andre
> ---
> drivers/clk/sunxi-ng/ccu-sun55i-a523-r.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/clk/sunxi-ng/ccu-sun55i-a523-r.c b/drivers/clk/sunxi-ng/ccu-sun55i-a523-r.c
> index 70ce0ca0cb7d..c5b0d4a2e397 100644
> --- a/drivers/clk/sunxi-ng/ccu-sun55i-a523-r.c
> +++ b/drivers/clk/sunxi-ng/ccu-sun55i-a523-r.c
> @@ -125,7 +125,7 @@ static SUNXI_CCU_GATE_HW(bus_r_dma_clk, "bus-r-dma",
> static SUNXI_CCU_GATE_HW(bus_r_rtc_clk, "bus-r-rtc",
> &r_apb0_clk.common.hw, 0x20c, BIT(0), 0);
> static SUNXI_CCU_GATE_HW(bus_r_cpucfg_clk, "bus-r-cpucfg",
> - &r_apb0_clk.common.hw, 0x22c, BIT(0), 0);
> + &r_apb0_clk.common.hw, 0x22c, BIT(0), CLK_IS_CRITICAL);
>
> static struct ccu_common *sun55i_a523_r_ccu_clks[] = {
> &r_ahb_clk.common,
Powered by blists - more mailing lists