diff options
Diffstat (limited to 'linker.ld')
-rw-r--r-- | linker.ld | 14 |
1 files changed, 5 insertions, 9 deletions
@@ -1,4 +1,4 @@ -ENTRY(_start) /* defined in boot.S */ +ENTRY(_boot) /* defined in boot.S; qemu needs it to run elf file */ SECTIONS { @@ -15,20 +15,16 @@ SECTIONS . = 0x8000; - /* For AArch64, use . = 0x80000 */ + /* RPi in 64-bit mode uses address 0x80000 instead */ __start = .; - .boot : - { - boot.o - } - __kernel_start = .; .kernel : { + __kernel_start = .; + KEEP(boot.o) *(EXCLUDE_FILE (libkernel.o interrupt_vector.o interrupts.o) *) + __kernel_end = .; } - . = ALIGN(4096); /* align to page size */ - __kernel_end = .; __kernel_size = __kernel_end - __kernel_start; |