Blame


1 f56312c5 2023-02-14 continue .section ".text.boot"
2 f56312c5 2023-02-14 continue
3 f56312c5 2023-02-14 continue .global _start
4 f56312c5 2023-02-14 continue _start:
5 f56312c5 2023-02-14 continue mrs x0, mpidr_el1
6 f56312c5 2023-02-14 continue and x0, x0, #0xffffff
7 f56312c5 2023-02-14 continue cbz x0, _first_processor
8 f56312c5 2023-02-14 continue
9 f56312c5 2023-02-14 continue // hang all non primary CPU
10 f56312c5 2023-02-14 continue _idle:
11 f56312c5 2023-02-14 continue wfe
12 f56312c5 2023-02-14 continue b _idle
13 f56312c5 2023-02-14 continue
14 f56312c5 2023-02-14 continue _first_processor:
15 f56312c5 2023-02-14 continue // zero out BSS section
16 f56312c5 2023-02-14 continue adr x0, bss_begin
17 f56312c5 2023-02-14 continue adr x1, bss_end
18 f56312c5 2023-02-14 continue _zero_bss:
19 f56312c5 2023-02-14 continue str xzr, [x0], #8
20 f56312c5 2023-02-14 continue cmp x0, x1
21 f56312c5 2023-02-14 continue b.lt _zero_bss
22 f56312c5 2023-02-14 continue
23 f56312c5 2023-02-14 continue # set stack before boot code and call kernel
24 f56312c5 2023-02-14 continue adr x0, _start
25 f56312c5 2023-02-14 continue mov sp, x0
26 f56312c5 2023-02-14 continue bl kernel_entry_point
27 f56312c5 2023-02-14 continue b _idle