mbox series

[0/4] pmdomain: renesas: rcar-sysc: Cleanups and R-Car M3-W quirk handling

Message ID cover.1713348705.git.geert+renesas@glider.be
Headers show
Series pmdomain: renesas: rcar-sysc: Cleanups and R-Car M3-W quirk handling | expand

Message

Geert Uytterhoeven April 17, 2024, 10:29 a.m. UTC
Hi all,

According to the hardware team, R-Car H3 ES1.0 and R-Car M3-W have a
rare quirk where powering down the A3IR, A3VC, and A3VP power domains
requires an extra delay of 1 µs.  So far upstream never handled that,
but the BSP has a fix[1].  As support for R-Car H3 ES1.x was dropped in
v6.4, only R-Car M3-W still needs to be handled.

The BSP fix relies on hard-coded string comparisons of power domain
names, and thus applies to all R-Car Gen3 SoCs (many introduced after
the original fix was written) having domains with a matching name,
whether they are affected or not.  Hence I took the opportunity to
refactor the R-Car SYSC driver first, and came up with a less-intrusive
fix.

Thanks for your comments!

[1] https://github.com/renesas-rcar/linux-bsp/commit/495e47e390499c522197352a08f423e8a3b41e83

Geert Uytterhoeven (4):
  pmdomain: renesas: rcar-sysc: Absorb rcar_sysc_ch into rcar_sysc_pd
  pmdomain: renesas: rcar-sysc: Split R-Car M3-W and M3-W+ sub-drivers
  pmdomain: renesas: rcar-sysc: Remove rcar_sysc_nullify() helper
  pmdomain: renesas: rcar-sysc: Add R-Car M3-W power-off delay quirk

 drivers/pmdomain/renesas/Makefile             |  4 +-
 .../{r8a7796-sysc.c => r8a77960-sysc.c}       | 34 +++------
 .../{r8a7796-sysc.c => r8a77961-sysc.c}       | 28 ++------
 drivers/pmdomain/renesas/rcar-sysc.c          | 70 ++++++++-----------
 drivers/pmdomain/renesas/rcar-sysc.h          |  9 +--
 5 files changed, 43 insertions(+), 102 deletions(-)
 copy drivers/pmdomain/renesas/{r8a7796-sysc.c => r8a77960-sysc.c} (64%)
 rename drivers/pmdomain/renesas/{r8a7796-sysc.c => r8a77961-sysc.c} (69%)