riscv: ae350: Fix XIP config boot failure
authorLeo Yu-Chi Liang <ycliang@andestech.com>
Wed, 1 Jun 2022 02:01:49 +0000 (10:01 +0800)
committerLeo Yu-Chi Liang <ycliang@andestech.com>
Thu, 11 Aug 2022 10:46:07 +0000 (18:46 +0800)
commitf4512618caa0182344aa55c5e15b2a14e28227cd
tree1f8782d42c0530bff0d7df64aa22f62fd6c831c2
parenta5041e33e4f05efec8a412641243c9281cba47e9
riscv: ae350: Fix XIP config boot failure

The booting flow is SPL -> OpenSBI -> U-Boot.
The boot hart may change after OpenSBI and may not always be hart0,
so wrap the related branch instruction with M-MODE.

Current DTB setup for XIP is not valid.
There is no chance for CONFIG_SYS_FDT_BASE, the DTB address used
in XIP mode, to be returned. Fix this.

Fixes: 2e8d2f88439d ("riscv: Remove OF_PRIOR_STAGE from RISC-V boards")
Signed-off-by: Rick Chen <rick@andestech.com>
Signed-off-by: Leo Yu-Chi Liang <ycliang@andestech.com>
arch/riscv/cpu/start.S
board/AndesTech/ax25-ae350/ax25-ae350.c