
Hi Iwamatsu-san, Marek,
On Wed, Jun 15, 2022 at 4:34 PM Geert Uytterhoeven geert@linux-m68k.org wrote:
On Tue, Mar 29, 2022 at 2:19 PM Geert Uytterhoeven geert+renesas@glider.be wrote:
On Renesas R-Car Gen3 platforms, the SPI Multi I/O Bus Controllers (RPC-IF) provide access to HyperFlash or QSPI storage. On production systems, they are typically locked by the TF-A firmware, unless TF-A is built with RCAR_RPC_HYPERFLASH_LOCKED=0. When unlocked, TF-A communicates this to subsequent software by passing a DT fragment that sets the "status" property of the RPC-IF device node to "okay".
Unfortunately there are several issues preventing this from working all the way to Linux:
- TF-A (and U-Boot on the receiving side) uses a device node name that does not conform to the DT specification nor the DT bindings for RPC-IF,
- While U-Boot receives the RPC-IF enablement from TF-A, it does not propagate it to Linux yet,
- The DTS files that are part of Linux do not have RPC HyperFlash support yet.
The first issue in TF-A is handled by [1].
This patch series takes care of the first and second issue in U-Boot, by renaming the RPC-IF device node, and by propagating the enablement from TF-A, if present, to Linux. The third patch updates the RPC-IF compatible values to match the actual DT bindings, but this is not critical for operation, and can be postponed (e.g. by syncing DTS with Linux v5.19).
Patches to enable RPC-IF support in Linux are available at [2].
The patches to enable RPC HyperFlash support in Linux are now in v5.19-rc1. What needs to be done to accept the U-Boot counterpart?
The Linux counterpart is now in v5.19. Can you please apply at least the first two patches to U-Boot? Thanks!
Thanks for your comments!
[1] "[PATCH TF-A] fix(plat/rcar3): Fix RPC-IF device node name" https://lore.kernel.org/r/3685623bed84674039adb61e723288d359ab0a50.164854419... [2] "[PATCH 0/5] arm64: dts: renesas: rcar-gen3: Enable HyperFlash support" https://lore.kernel.org/r/cover.1648548339.git.geert+renesas@glider.be
Geert Uytterhoeven (3): ARM: dts: rmobile: Fix RPC-IF device node names ARM: renesas: Propagate RPC-IF enablement to subsequent software [RFC] renesas: Fix RPC-IF compatible values
arch/arm/dts/r7s72100-gr-peach-u-boot.dts | 4 +- arch/arm/dts/r8a774c0-u-boot.dtsi | 4 +- arch/arm/dts/r8a77950-u-boot.dtsi | 4 +- arch/arm/dts/r8a77960-u-boot.dtsi | 4 +- arch/arm/dts/r8a77965-u-boot.dtsi | 4 +- arch/arm/dts/r8a77970-u-boot.dtsi | 4 +- arch/arm/dts/r8a77980-u-boot.dtsi | 4 +- arch/arm/dts/r8a77990-u-boot.dtsi | 4 +- arch/arm/dts/r8a77995-u-boot.dtsi | 4 +- arch/arm/dts/r8a779a0-u-boot.dtsi | 2 +- board/renesas/rcar-common/common.c | 46 ++++++++++++++++++++++- drivers/mtd/renesas_rpc_hf.c | 3 +- drivers/spi/renesas_rpc_spi.c | 9 +---- 13 files changed, 67 insertions(+), 29 deletions(-)
Gr{oetje,eeting}s,
Geert
-- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds