Skip to content
Snippets Groups Projects
Commit 931bec31 authored by Simon Glass's avatar Simon Glass Committed by Tom Rini
Browse files

arm: Switch aarch64 to using generic global_data setup


There is quite a bit of assembler code that can be removed if we use the
generic global_data setup. Less arch-specific code makes it easier to add
new features and maintain the start-up code.

Drop the unneeded code and adjust the hooks in board_f.c to cope.

Tested on LS2085ARDB and LS2085AQDS (armv8 SoC).
Tested-by: default avatarYork Sun <yorksun@freescale.com>

Signed-off-by: default avatarSimon Glass <sjg@chromium.org>
parent 518f0bcc
No related branches found
No related tags found
No related merge requests found
...@@ -73,20 +73,11 @@ ENTRY(_main) ...@@ -73,20 +73,11 @@ ENTRY(_main)
ldr x0, =(CONFIG_SPL_STACK) ldr x0, =(CONFIG_SPL_STACK)
#else #else
ldr x0, =(CONFIG_SYS_INIT_SP_ADDR) ldr x0, =(CONFIG_SYS_INIT_SP_ADDR)
#endif
sub x18, x0, #GD_SIZE /* allocate one GD above SP */
bic x18, x18, #0x7 /* 8-byte alignment for GD */
zero_gd:
sub x0, x0, #0x8
str xzr, [x0]
cmp x0, x18
b.gt zero_gd
#if defined(CONFIG_SYS_MALLOC_F_LEN)
ldr x0, =CONFIG_SYS_MALLOC_F_LEN
sub x0, x18, x0
str x0, [x18, #GD_MALLOC_BASE]
#endif #endif
bic sp, x0, #0xf /* 16-byte alignment for ABI compliance */ bic sp, x0, #0xf /* 16-byte alignment for ABI compliance */
bl board_init_f_mem
mov sp, x0
mov x0, #0 mov x0, #0
bl board_init_f bl board_init_f
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment