Almost all Rockchip boards use the same Kconfig value for SPL_PAD_TO, 0x7f8000.
u-boot-rockchip.bin is typically written to offset 64S (32KiB) of MMC media. u-boot.itb (or u-boot.img) is typically expected at offset 16384S (8MiB) of MMC media (SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x4000). SPL_PAD_TO is used as the offset for u-boot.itb (or u-boot.img) in the generated simple-bin binman image, and can be calculated as: SPL_PAD_TO = (16384S - 64S) * 512 = 0x7f8000 Add this value as a default value for ARCH_ROCKCHIP. Signed-off-by: Jonas Karlman <jo...@kwiboo.se> Reviewed-by: Kever Yang <kever.y...@rock-chips.com> Reviewed-by: Quentin Schulz <quentin.sch...@cherry.de> --- Changes in v6: - No change Changes in v5: - Update commit message - Collect r-b tags Changes in v4: - New patch This patch does not drop SPL_PAD_TO from existing defconfigs that would be affected by this change, something that can wait until next "configs: Resync with savedefconfig". Following boards does not set a SPL_PAD_TO due to not using SPL: - elgin-rv1108_defconfig - evb-rk3128_defconfig - evb-rv1108_defconfig - geekbox_defconfig - sheep-rk3368_defconfig --- common/spl/Kconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/common/spl/Kconfig b/common/spl/Kconfig index c08045f9c8d7..3f8d24e8d0f5 100644 --- a/common/spl/Kconfig +++ b/common/spl/Kconfig @@ -96,6 +96,7 @@ config SPL_MAX_SIZE config SPL_PAD_TO hex "Offset to which the SPL should be padded before appending the SPL payload" + default 0x7f8000 if ARCH_ROCKCHIP default 0x31000 if ARCH_MX6 && MX6_OCRAM_256KB default 0x11000 if ARCH_MX7 || (ARCH_MX6 && !MX6_OCRAM_256KB) default 0x10000 if ARCH_KEYSTONE -- 2.49.0