On 2024-03-24 18:28, Jonas Karlman wrote:
On 2024-03-24 17:52, Dragan Simic wrote:
Please see my comments below.

On 2024-03-22 21:50, Jonas Karlman wrote:
Add missing boot source id <-> device tree node path mapping for SPI
NOR
flash on PX30, RK3288, RK3308, RK3368 and RV1126.

Signed-off-by: Jonas Karlman <jo...@kwiboo.se>
---
v2:
- New patch
---
 arch/arm/mach-rockchip/px30/px30.c     | 1 +
 arch/arm/mach-rockchip/rk3288/rk3288.c | 1 +
 arch/arm/mach-rockchip/rk3308/rk3308.c | 1 +
 arch/arm/mach-rockchip/rk3368/rk3368.c | 1 +
 arch/arm/mach-rockchip/rv1126/rv1126.c | 1 +
 5 files changed, 5 insertions(+)

diff --git a/arch/arm/mach-rockchip/px30/px30.c
b/arch/arm/mach-rockchip/px30/px30.c
index b4f655fa4b3e..2ec3289d75b7 100644
--- a/arch/arm/mach-rockchip/px30/px30.c
+++ b/arch/arm/mach-rockchip/px30/px30.c
@@ -19,6 +19,7 @@

 const char * const boot_devices[BROM_LAST_BOOTSOURCE + 1] = {
        [BROM_BOOTSOURCE_EMMC] = "/mmc@ff390000",
+       [BROM_BOOTSOURCE_SPINOR] = "/spi@ff3a0000/flash@0",

AFAICT, no PX30-based board contains an SPI chip, but making this
future-proof perhaps shouldn't hurt.

The rk3326-odroid-go2 variant of PX30 has a jedec,spi-nor node.

Ah, I see, I missed that.  Thanks for the clarification.

        [BROM_BOOTSOURCE_SD] = "/mmc@ff370000",
 };

diff --git a/arch/arm/mach-rockchip/rk3288/rk3288.c
b/arch/arm/mach-rockchip/rk3288/rk3288.c
index c77c56c1dab5..70cf50029121 100644
--- a/arch/arm/mach-rockchip/rk3288/rk3288.c
+++ b/arch/arm/mach-rockchip/rk3288/rk3288.c
@@ -28,6 +28,7 @@ DECLARE_GLOBAL_DATA_PTR;

 const char * const boot_devices[BROM_LAST_BOOTSOURCE + 1] = {
        [BROM_BOOTSOURCE_EMMC] = "/mmc@ff0f0000",
+       [BROM_BOOTSOURCE_SPINOR] = "/spi@ff130000/flash@0",

Using spi2 for a flash chip applies to some RK3288-based boards, but
AFAICT not to all of them.  For example, arch/arm/dts/rk3288-evb.dtsi
uses spi0 for a flash chip, which in turn translates to
/spi@ff110000/flash@0.  The same also applies to
arch/arm/dts/rk3288-firefly.dtsi, for example.

The RK3288 TRM explicitly mention that it can boot from SPI2 CS0.

Also I can only find jedec,spi-nor reference in rk3288-phycore-som.dtsi
and rk3288-veyron.dtsi, nothing in rk3288-evb.dtsi or rk3288-firefly.dtsi.

Oh, I see now, you're right.  I've checked the Firefly-RK3288 schematic
and it just exposes the spi0 interface on one of its expansion headers.

        [BROM_BOOTSOURCE_SD] = "/mmc@ff0c0000",
 };

diff --git a/arch/arm/mach-rockchip/rk3308/rk3308.c
b/arch/arm/mach-rockchip/rk3308/rk3308.c
index 27a748327e31..b3ffabc5449a 100644
--- a/arch/arm/mach-rockchip/rk3308/rk3308.c
+++ b/arch/arm/mach-rockchip/rk3308/rk3308.c
@@ -141,6 +141,7 @@ enum {

 const char * const boot_devices[BROM_LAST_BOOTSOURCE + 1] = {
        [BROM_BOOTSOURCE_EMMC] = "/mmc@ff490000",
+       [BROM_BOOTSOURCE_SPINOR] = "/spi@ff4c0000/flash@0",

AFAICT, no RK3308-based board contains an SPI chip, and I'm not really
sure where does /spi@ff4c0000/flash@0 come from.

RK3308 TRM mention that it can boot from the SFC. And yes there is no
upstream board that currently have a jedec,spi-nor node, it however
have the sfc (spi@ff4c0000) node so this adds correct node path.

Hmm, I see no sfc node in any of the arch/arm/dts/rk3308* files?
Maybe I'm missing something, but there's also no "ff4c0000" string
in the entire arch/arm/dts directory.

Reply via email to