On Tue, Mar 29, 2022 at 2:19 PM Geert Uytterhoeven <geert+renesas@xxxxxxxxx> 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: > 1. 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, > 2. While U-Boot receives the RPC-IF enablement from TF-A, it does not > propagate it to Linux yet, > 3. 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? Thanks! > > Thanks for your comments! > > [1] "[PATCH TF-A] fix(plat/rcar3): Fix RPC-IF device node name" > https://lore.kernel.org/r/3685623bed84674039adb61e723288d359ab0a50.1648544199.git.geert+renesas@xxxxxxxxx > [2] "[PATCH 0/5] arm64: dts: renesas: rcar-gen3: Enable HyperFlash support" > https://lore.kernel.org/r/cover.1648548339.git.geert+renesas@xxxxxxxxx > > 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@xxxxxxxxxxxxxx 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