]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
clk: renesas: rcar-gen4: Add support for clock dividers in FRQCRB
authorNiklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Thu, 6 Nov 2025 21:16:02 +0000 (22:16 +0100)
committerGeert Uytterhoeven <geert+renesas@glider.be>
Mon, 10 Nov 2025 09:59:47 +0000 (10:59 +0100)
commit566ed24a0a79e23b37cc883a49d515916a245cdb
treec2d93517547d1dfa54e15ea7bdc1395998bb9474
parent07525a693a5ff6592668a0fd647153e4b4933cae
clk: renesas: rcar-gen4: Add support for clock dividers in FRQCRB

The FRQCRB register on R-Car V3U, V4H and V4M do in addition to the
already supported KICK bit contain settings for the frequency division
ratios for the clocks ZTR, ZT, ZS and ZG. It is however not possible to
use the latter when registering a Z clock with the DEF_GEN4_Z() macro.

This change adds support for that by extending the existing practice of
treating the bit field offsets at multiples of 32 to map to a different
register. With this new mapping in palace

    bit offsets  0 - 31 map to FRQCRC0
    bit offsets 32 - 63 map to FRQCRC1
    bit offsets 64 - 95 map to FRQCRB

The change also adds an error condition to return an error if an unknown
offset is used.

The KICK bit defined in FRQCRB and already supported covers all three
registers and no addition to how it is handled are needed.

Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://patch.msgid.link/20251106211604.2766465-3-niklas.soderlund+renesas@ragnatech.se
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
drivers/clk/renesas/rcar-gen4-cpg.c