Hi Jonas,
On 1/27/25 12:48 AM, Jonas Karlman wrote:
A few Rockchip ARMv7 SoCs use 0x60000000 as DRAM base address instead of
Are there known exceptions? Among the list you provided I see RV1126 is
missing but is ARMv7-based. Is it an oversight or done on purpose? I
couldn't quickly find the TRM so no clue.
the more common 0x0 DRAM base address used on AArch64 SoCs.
Add default options that should work for these ARMv7 SoCs. Same offsets
as before are used, just below 64 MiB. Hex values have also been padded
to improve alignment.
Signed-off-by: Jonas Karlman <jo...@kwiboo.se>
---
arch/arm/mach-rockchip/Kconfig | 35 +++++++++++++++++++++++-----------
1 file changed, 24 insertions(+), 11 deletions(-)
diff --git a/arch/arm/mach-rockchip/Kconfig b/arch/arm/mach-rockchip/Kconfig
index 5aa9e0f1af3b..da20d3233fe3 100644
--- a/arch/arm/mach-rockchip/Kconfig
+++ b/arch/arm/mach-rockchip/Kconfig
@@ -637,40 +637,53 @@ source "arch/arm/mach-rockchip/rv1126/Kconfig"
if ROCKCHIP_COMMON_STACK_ADDR && SPL_SHARES_INIT_SP_ADDR
config CUSTOM_SYS_INIT_SP_ADDR
- default 0x3f00000
+ default 0x63f00000 if SPL_TEXT_BASE = 0x60000000
+ default 0x03f00000 if SPL_TEXT_BASE = 0x00000000
A bit sad we cannot do arithmetic here in Kconfig :(
config SYS_MALLOC_F_LEN
- default 0x10000 if CUSTOM_SYS_INIT_SP_ADDR = 0x3f00000
+ default 0x10000 if CUSTOM_SYS_INIT_SP_ADDR = 0x63f00000
+ default 0x10000 if CUSTOM_SYS_INIT_SP_ADDR = 0x03f00000
config SPL_SYS_MALLOC_F_LEN
- default 0x8000 if CUSTOM_SYS_INIT_SP_ADDR = 0x3f00000
+ default 0x8000 if CUSTOM_SYS_INIT_SP_ADDR = 0x63f00000
+ default 0x8000 if CUSTOM_SYS_INIT_SP_ADDR = 0x03f00000
config TPL_SYS_MALLOC_F_LEN
- default 0x4000 if CUSTOM_SYS_INIT_SP_ADDR = 0x3f00000
+ default 0x0800 if CUSTOM_SYS_INIT_SP_ADDR = 0x63f00000
+ default 0x4000 if CUSTOM_SYS_INIT_SP_ADDR = 0x03f00000
config TEXT_BASE
- default 0x00200000 if ARM64
+ default 0x60200000 if SPL_TEXT_BASE = 0x60000000
+ default 0x00200000 if SPL_TEXT_BASE = 0x00000000
config SPL_TEXT_BASE
- default 0x0 if ARM64
+ default 0x60000000 if ROCKCHIP_RK3036 || ROCKCHIP_RK3066 || \
+ ROCKCHIP_RK3128 || ROCKCHIP_RK3188 || \
+ ROCKCHIP_RK322X || ROCKCHIP_RV1108
If applicable to all ARMv7 SoCs, maybe
if CPU_V7A
would be more future-proof?
Cheers,
Quentin