Re: [PATCH 1/2] clk: spacemit: k3: set hdma clock as critical

From: Aurelien Jarno

Date: Tue Jun 30 2026 - 18:51:49 EST


On 2026-06-30 08:53, Yixun Lan wrote:
> HDMA clock is responsible for the internal TCM access path of X100 RISC-V
> core, so set the clock flag as critical to prevent it from being shut off,
> otherwise the Linux system will hang.
>
> Fixes: e371a77255b8 ("clk: spacemit: k3: add the clock tree")
> Reported-by: Han Gao <gaohan@xxxxxxxxxxx>
> Signed-off-by: Yixun Lan <dlan@xxxxxxxxxx>
> ---
> drivers/clk/spacemit/ccu-k3.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/clk/spacemit/ccu-k3.c b/drivers/clk/spacemit/ccu-k3.c
> index cb0c4277f72a..f0160b4c0e1b 100644
> --- a/drivers/clk/spacemit/ccu-k3.c
> +++ b/drivers/clk/spacemit/ccu-k3.c
> @@ -1026,7 +1026,7 @@ CCU_MUX_DIV_GATE_DEFINE(isim_vclk_out3, isim_vclk_parents, APMU_SNR_ISIM_VCLK_CT
> /* APMU clocks end */
>
> /* DCIU clocks start */
> -CCU_GATE_DEFINE(hdma_clk, CCU_PARENT_HW(axi_clk), DCIU_DMASYS_CLK_EN, BIT(0), 0);
> +CCU_GATE_DEFINE(hdma_clk, CCU_PARENT_HW(axi_clk), DCIU_DMASYS_CLK_EN, BIT(0), CLK_IS_CRITICAL);
> CCU_GATE_DEFINE(dma350_clk, CCU_PARENT_HW(axi_clk), DCIU_DMASYS_SDMA_CLK_EN, BIT(0), 0);
> CCU_GATE_DEFINE(c2_tcm_pipe_clk, CCU_PARENT_HW(axi_clk), DCIU_C2_TCM_PIPE_CLK, BIT(0), 0);
> CCU_GATE_DEFINE(c3_tcm_pipe_clk, CCU_PARENT_HW(axi_clk), DCIU_C3_TCM_PIPE_CLK, BIT(0), 0);

Thanks for the patch. It fixes a system hang occuring when a vector
instruction access generates a page fault.

Tested-by: Aurelien Jarno <aurelien@xxxxxxxxxxx>

--
Aurelien Jarno GPG: 4096R/1DDD8C9B
aurelien@xxxxxxxxxxx http://aurel32.net