[PATCH 0/7] memory: renesas-rpc-if: Optimize transfer overhead and implement runtime PM autosuspend

From: Prabhakar

Date: Wed Jul 15 2026 - 18:24:44 EST


From: Lad Prabhakar <prabhakar.mahadev-lad.rj@xxxxxxxxxxxxxx>

Hi all,

This patch series optimizes the Renesas RPC-IF driver by significantly
reducing software overhead in both the direct memory-mapped (dirmap) and
manual transfer paths, maximizing transaction throughput, and introducing
runtime PM autosuspend to prevent aggressive power gating during
consecutive flash operations.

---
Performance Results:

These changes were benchmarked using flash_speed on the RZ/T2H EVK with
xSPI0/1 interfaces operating in 1S-1S-1S mode for write operations:

xSPI0(MX25LW51245G):
Without With Fixes
Write Speed: 806 KiB/s 942 KiB/s
Read Speed: 5333 KiB/s 5361 KiB/s

xSPI1(AT25SF128A):
Write Speed: 467 KiB/s 501 KiB/s
Read Speed: 17964 KiB/s 18285 KiB/s


Note:
- Patches have been rebased on top of next-20260714.
- Ive kept patches 6 and 7 separate as they belong
to different subsystems (SPI and memory) and may
be applied independently.

Cheers,
Prabhakar

Lad Prabhakar (7):
memory: renesas-rpc-if: Mark XSPI_CDD1BUF0 as volatile
memory: renesas-rpc-if: Move static bridge configurations out of
dirmap hot paths
memory: renesas-rpc-if: Consolidate XSPI_CDTBUF0 updates in write path
memory: renesas-rpc-if: Consolidate XSPI_CDTBUF0 updates in read path
memory: renesas-rpc-if: Consolidate command setup register programming
spi: spi-rpc-if: Implement 200ms runtime PM autosuspend delay
memory: renesas-rpc-if: Use runtime PM autosuspend after transfers

drivers/memory/renesas-rpc-if.c | 87 ++++++++++++++-------------------
drivers/spi/spi-rpc-if.c | 4 ++
2 files changed, 40 insertions(+), 51 deletions(-)

--
2.54.0