diff options
Diffstat (limited to 'kernel')
| -rw-r--r-- | kernel/entry_efi.c | 2 | ||||
| -rw-r--r-- | kernel/kernel.ld | 9 |
2 files changed, 5 insertions, 6 deletions
diff --git a/kernel/entry_efi.c b/kernel/entry_efi.c index 1acd399..40e674f 100644 --- a/kernel/entry_efi.c +++ b/kernel/entry_efi.c @@ -3,8 +3,6 @@ #include <boot/entry/entry_efi.h> -static const char kernel_entry_data[4096]; - noreturn void kernel_entry(struct efi_boot_data *data) { (void)data; diff --git a/kernel/kernel.ld b/kernel/kernel.ld index 9538056..17cb8b4 100644 --- a/kernel/kernel.ld +++ b/kernel/kernel.ld @@ -1,15 +1,16 @@ ENTRY(kernel_entry) +k_virt_base = 0xffffffff80000000; + SECTIONS { - . = SIZEOF_HEADERS; - - .text 0 : + .text k_virt_base : AT(ADDR(.text) - k_virt_base) { *(.text) + . = ALIGN(4K); } =0x90 - .data : ALIGN(4K) + .data ALIGN(4K) : AT(ADDR(.data) - k_virt_base) { *(.rodata) *(.data) |
