aboutsummaryrefslogtreecommitdiff
path: root/x86_64/boothdr.S
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2022-08-27 23:40:14 +0200
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2022-08-27 23:40:54 +0200
commit7d642c99641ffc6960c8dd9ea88634bdaae80213 (patch)
treeb4c8e3085b1ef3800c33006c7c6c50464a27dd83 /x86_64/boothdr.S
parent9acc5293e0386bfc0c505ac2efd287e610e7b662 (diff)
downloadgnumach-7d642c99641ffc6960c8dd9ea88634bdaae80213.tar.gz
gnumach-7d642c99641ffc6960c8dd9ea88634bdaae80213.tar.bz2
gnumach-7d642c99641ffc6960c8dd9ea88634bdaae80213.zip
Fix building x86_64 xen platform
On Xen we do not have a separate boot section, we directly start at the kernel map address. We thus do not have a map shift.
Diffstat (limited to 'x86_64/boothdr.S')
-rw-r--r--x86_64/boothdr.S15
1 files changed, 2 insertions, 13 deletions
diff --git a/x86_64/boothdr.S b/x86_64/boothdr.S
index 5ea7834d..d81f9a78 100644
--- a/x86_64/boothdr.S
+++ b/x86_64/boothdr.S
@@ -26,8 +26,6 @@
*/
.section .boot.text,"ax"
/* We should never be entered this way. */
- .globl _start
-_start:
.globl boot_start
boot_start:
@@ -36,11 +34,7 @@ boot_start:
/* MultiBoot header - see multiboot.h. */
#define MULTIBOOT_MAGIC 0x1BADB002
-#ifdef __ELF__
#define MULTIBOOT_FLAGS 0x00000003
-#else /* __ELF__ */
-#define MULTIBOOT_FLAGS 0x00010003
-#endif /* __ELF__ */
P2ALIGN(2)
boot_hdr:
.long MULTIBOOT_MAGIC
@@ -50,14 +44,9 @@ boot_hdr:
* XX this works OK until we need at least the 30th bit.
*/
.long - (MULTIBOOT_MAGIC+MULTIBOOT_FLAGS)
-#ifndef __ELF__ /* a.out kludge */
- .long boot_hdr /* header_addr */
- .long _start /* load_addr */
- .long _edata /* load_end_addr */
- .long _end /* bss_end_addr */
- .long boot_entry /* entry */
-#endif /* __ELF__ */
+ .global _start
+_start:
boot_entry:
/*
* Prepare minimal page mapping to jump to 64 bit and to C code.