summaryrefslogtreecommitdiff
path: root/src/kernel/arch/amd64/multiboot.h
diff options
context:
space:
mode:
authordzwdz2022-07-16 13:33:00 +0200
committerdzwdz2022-07-16 13:33:00 +0200
commit912d2e3c7eb1baa71dda2c0a28aa5809eaa96f27 (patch)
tree4e27f3538466d5fd63a311d50916039a7a15a485 /src/kernel/arch/amd64/multiboot.h
parent1eeb66af44ab335888410d716d604e569f20866e (diff)
amd64: barely boot into kernel code
Diffstat (limited to 'src/kernel/arch/amd64/multiboot.h')
-rw-r--r--src/kernel/arch/amd64/multiboot.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/kernel/arch/amd64/multiboot.h b/src/kernel/arch/amd64/multiboot.h
new file mode 100644
index 0000000..c6a2650
--- /dev/null
+++ b/src/kernel/arch/amd64/multiboot.h
@@ -0,0 +1,29 @@
+#pragma once
+#include <stdint.h>
+
+struct multiboot_mod {
+ uint32_t start;
+ uint32_t end;
+ uint32_t str;
+ uint32_t _reserved;
+} __attribute__((packed));
+
+struct multiboot_info {
+ uint32_t flag_mem : 1;
+ uint32_t flag_boot_device : 1;
+ uint32_t flag_cmdline : 1;
+ uint32_t flag_mods : 1;
+ uint32_t _flag_other : 28; // unimplemented
+
+ uint32_t mem_lower;
+ uint32_t mem_upper;
+
+ uint32_t boot_device;
+
+ uint32_t cmdline;
+
+ uint32_t mods_count;
+ uint32_t mods;
+
+ // [...]
+} __attribute__((packed));