]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
clk: renesas: rzg2l: Add support for critical resets
authorBiju Das <biju.das.jz@bp.renesas.com>
Tue, 24 Mar 2026 11:43:07 +0000 (11:43 +0000)
committerGeert Uytterhoeven <geert+renesas@glider.be>
Thu, 26 Mar 2026 18:39:32 +0000 (19:39 +0100)
commit3d700746d76bedb9f3de505494994cd3f2afb59f
treec2fb5c235d8414a160e42127b43e23cf89fd9b4d
parent44ed098c6ef354dcd56367512f73a8f1e29846fb
clk: renesas: rzg2l: Add support for critical resets

Some reset lines must remain deasserted at all times after boot, as
asserting them would disable critical system functionality with no
owning driver to restore them.  This mirrors the existing crit_mod_clks
mechanism which protects critical module clocks from being disabled.

On RZ/G2L family SoCs, the DMA reset must be remain deasserted for
routing some peripheral interrupts to CPU.

Add crit_resets and num_crit_resets fields to struct rzg2l_cpg_info to
allow SoC-specific data tables to declare reset IDs that must never be
asserted.

Introduce rzg2l_cpg_deassert_crit_resets() to iterate over all critical
resets and deassert them.  Call it both at probe time and during resume
to ensure critical peripherals are held out of reset after power-on and
suspend/resume cycles.

Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
Link: https://patch.msgid.link/20260324114329.268249-3-biju.das.jz@bp.renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
drivers/clk/renesas/rzg2l-cpg.c
drivers/clk/renesas/rzg2l-cpg.h