From: Nikita Shubin <[email protected]> Restore global pointer before board_init_f_init_reserve call, as "a0" can be set in harts_early_init call and we end up with invalid global pointer.
Signed-off-by: Nikita Shubin <[email protected]> --- arch/riscv/cpu/start.S | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/riscv/cpu/start.S b/arch/riscv/cpu/start.S index 76850ec9be..623de57551 100644 --- a/arch/riscv/cpu/start.S +++ b/arch/riscv/cpu/start.S @@ -142,6 +142,7 @@ call_harts_early_init: bnez tp, secondary_hart_loop #endif + mv a0, s0 jal board_init_f_init_reserve SREG s1, GD_FIRMWARE_FDT_ADDR(gp) -- 2.35.1

