diff options
author | Nikita Shubin <n.shubin@yadro.com> | 2022-05-20 14:41:17 +0300 |
---|---|---|
committer | Leo Yu-Chi Liang <ycliang@andestech.com> | 2022-08-11 18:42:53 +0800 |
commit | a5041e33e4f05efec8a412641243c9281cba47e9 (patch) | |
tree | 2863c733b1de90da6a6702324b979ef2fb913162 /arch | |
parent | cdebee1fd9fa04cc4c972f826bae19b28c253eb0 (diff) | |
download | u-boot-a5041e33e4f05efec8a412641243c9281cba47e9.tar.gz |
riscv: cpu: set gp before board_init_f_init_reserve
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 <n.shubin@yadro.com>
Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/riscv/cpu/start.S | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/riscv/cpu/start.S b/arch/riscv/cpu/start.S index f2ef5564a15..ac81783a902 100644 --- a/arch/riscv/cpu/start.S +++ b/arch/riscv/cpu/start.S @@ -143,6 +143,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) |