When booting RISC-V ELF-formatted kernel images (IH_TYPE_KERNEL + IH_OS_ELF), explicitly pass SMP core/hart ID and DTB address to comply with modern SMP-enabled kernels' boot protocol requirements.
Signed-off-by: Zone.N <zone.ni...@hotmail.com> --- boot/bootm_os.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/boot/bootm_os.c b/boot/bootm_os.c index a3c7cb5332e..a0f310b1359 100644 --- a/boot/bootm_os.c +++ b/boot/bootm_os.c @@ -402,6 +402,11 @@ static int do_bootm_elf(int flag, struct bootm_info *bmi) if (flag != BOOTM_STATE_OS_GO) return 0; +#if defined(CONFIG_RISCV) + bmi->argc = gd->arch.boot_hart; + bmi->argv = (char **)bmi->images->ft_addr; +#endif + bootelf(bmi->images->ep, flags, bmi->argc, bmi->argv); return 1; -- 2.45.2