
The '_start' is using as vector table base address, and will write to VBAR register, need to align to 0x20 for armv7.
Signed-off-by: Kever Yang kever.yang@rock-chips.com ---
arch/arm/include/asm/arch-rockchip/boot0.h | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/arch/arm/include/asm/arch-rockchip/boot0.h b/arch/arm/include/asm/arch-rockchip/boot0.h index 7346876..88f0ff6 100644 --- a/arch/arm/include/asm/arch-rockchip/boot0.h +++ b/arch/arm/include/asm/arch-rockchip/boot0.h @@ -13,10 +13,17 @@ */
#ifdef CONFIG_SPL_BUILD - .space 0x4 /* space for the 'RK33' */ + .space 0x4 /* space for Rockchip SoC tag like 'RK33' */ #endif b reset
+/* For armv7, the addr '_start' will used as vector start address + * and write to VBAR register, which need to aligned to 0x20. + */ +#ifdef CONFIG_CPU_V7 + .align(5) +#endif + #if defined(CONFIG_ROCKCHIP_RK3399) && defined(CONFIG_SPL_BUILD) .space CONFIG_ROCKCHIP_SPL_RESERVE_IRAM /* space for the ATF data */ #endif