Kernel/aarch64: Branch to local halt function instead of C++ one

The kernel image grew so much that it wasn't possible to jump to the C++
symbol anymore, since this generated a 'relocation truncated' error when
linking.
This commit is contained in:
Timon Kruiper 2022-10-25 18:37:56 +02:00 committed by Gunnar Beutner
parent a47271ebdc
commit acfeffc9ca
Notes: sideshowbarker 2024-07-17 17:40:13 +09:00

View file

@ -13,7 +13,7 @@ start:
// Let only core 0 continue, put other cores to sleep.
mrs x13, MPIDR_EL1
and x13, x13, 0xff
cbnz x13, _ZN6Kernel9Processor4haltEv
cbnz x13, halt
// Let stack start before .text for now.
// 512 kiB (0x80000) of stack are probably not sufficient, especially once we give the other cores some stack too,
@ -31,3 +31,8 @@ Lbss_clear_loop:
bne Lbss_clear_loop
b init
halt:
msr daifset, #2
wfi
b halt