pmdomain: renesas: rcar-gen4-sysc: Reduce atomic delays
authorGeert Uytterhoeven <geert+renesas@glider.be>
Fri, 1 Mar 2024 18:23:45 +0000 (19:23 +0100)
committerUlf Hansson <ulf.hansson@linaro.org>
Wed, 6 Mar 2024 10:25:27 +0000 (11:25 +0100)
commitccabbb6768fc72d6cb0223324925c93658d91e63
tree7e00c1fe2a89e962236162390a9b20db79201c41
parent04581ea2b2377c91f704b1170f8c97c957fb1330
pmdomain: renesas: rcar-gen4-sysc: Reduce atomic delays

The delays used with the various atomic polling loops are already at the
maximum value of ~10µs, as documented for read_poll_timeout_atomic().
Hence reduce the delays from 10 to 1 µs.  Increase PDRESR_RETRIES
accordingly, to retain the old (generous) timeout value.

Measurements on R-Car V3U, S4, V4H, and V4M show that the first three
polling loops rarely (never?) loop, so the actual delay does not matter.
The fourth loop (for SYSCISCR in rcar_gen4_sysc_power()) typically ran
for one or two cycles with the old delay.  With the reduced delay, it
typically runs for two to 17 cycles, and finishes earlier than before,
which can reduce loop time up to a factor of three.

While at it, rename the SYSCISR_{TIMEOUT,DELAY_US} definitions to
SYSCISCR_{TIMEOUT,DELAY_US}, to match the register name they apply to.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/77f150522096d55c6da0ff983db61e0cf6309344.1709317289.git.geert+renesas@glider.be
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
drivers/pmdomain/renesas/rcar-gen4-sysc.c