summaryrefslogtreecommitdiff
path: root/src/link.ld
diff options
context:
space:
mode:
authorBrett Weiland <brett_weiland@bpcspace.com>2021-08-26 21:39:57 -0500
committerBrett Weiland <brett_weiland@bpcspace.com>2021-08-26 21:39:57 -0500
commitb2dc154433fecdacc245387d6b15736e3415532e (patch)
tree2889ddccfe3d66d93cb2320cfe9d815abaaf9d94 /src/link.ld
parent079c3308b80f4ab1830f3e05dda57445e91d30a6 (diff)
smp boots!
Diffstat (limited to 'src/link.ld')
-rw-r--r--src/link.ld16
1 files changed, 8 insertions, 8 deletions
diff --git a/src/link.ld b/src/link.ld
index 529d43f..9d707b4 100644
--- a/src/link.ld
+++ b/src/link.ld
@@ -11,23 +11,23 @@ SECTIONS
bootloader.o(.text)
}
smp_bootloader 0x8000 :
- AT(SIZEOF(bootloader))
+ AT(0 + SIZEOF(bootloader))
{
smp_trampoline.o(.text)
}
kernel _kernel_s1_loc :
- AT (SIZEOF(bootloader))
+ AT (0 + SIZEOF(smp_bootloader) + SIZEOF(bootloader))
{
- EXCLUDE_FILE (*bootloader.o) *(.text .data .bss .rodata .comment .eh_frame)
+ EXCLUDE_FILE (*bootloader.o *smp_trampoline.o) *(.text .data .bss .rodata .comment .eh_frame)
}
}
-_kernel_sector_size = ((SIZEOF(kernel) + SIZEOF(smp_bootloader) + 511) / 512);
-_kernel_page_size = ((SIZEOF(kernel) + SIZEOF(smp_bootloader) + 0xfff) / 0x1000);
-_bootloader_stage1_size = (SIZEOF(bootloader) + 511) / 512;
+_kernel_sector_size = ((SIZEOF(kernel) + 511) / 512);
+_kernel_page_size = ((SIZEOF(kernel) + 0xfff) / 0x1000);
+_bootloader_stage1_size = (SIZEOF(bootloader) + SIZEOF(smp_bootloader) + 511) / 512;
-__load_start_smp_bootloader = LOADADDR(smp_bootloader);
-__load_stop_smp_bootloader = LOADADDR(smp_bootloader) + SIZEOF(smp_bootloader);
+__load_start_smp_bootloader = LOADADDR(smp_bootloader) + 0x7c00;
+__load_stop_smp_bootloader = LOADADDR(smp_bootloader) + SIZEOF(smp_bootloader) + 0x7c00;
_kernel_stack_loc = (0x100000 + (_kernel_page_size * 0x1000) + 0x2000) - 8;
_kernel_shared_zone_begin = 0x100000 + (_kernel_page_size * 0x1000) + 0x2000;