aboutsummaryrefslogtreecommitdiff
path: root/kernel/include/boot
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/include/boot')
-rw-r--r--kernel/include/boot/config.h12
-rw-r--r--kernel/include/boot/multiboot_macros.h6
2 files changed, 18 insertions, 0 deletions
diff --git a/kernel/include/boot/config.h b/kernel/include/boot/config.h
new file mode 100644
index 0000000..74e0d42
--- /dev/null
+++ b/kernel/include/boot/config.h
@@ -0,0 +1,12 @@
+#pragma once
+
+#define IDENTITY_MAPPED_RAM_SIZE (1 << 16)
+
+#define KERNEL_PHYS_BASE ((uintptr_t)(&kernel_phys_base))
+#define KERNEL_PHYS_END ((uintptr_t)(&kernel_phys_end))
+#define KERNEL_VMA 0xffff800000000000
+
+// https://www.usenix.org/sites/default/files/conference/protected-files/sec14_slides_kemerlis.pdf
+#define PHYS_OFFSET 0xffff880000000000
+
+#define MEMORY_MAP_BASE 0x9000
diff --git a/kernel/include/boot/multiboot_macros.h b/kernel/include/boot/multiboot_macros.h
new file mode 100644
index 0000000..1ca6383
--- /dev/null
+++ b/kernel/include/boot/multiboot_macros.h
@@ -0,0 +1,6 @@
+#pragma once
+
+// random macro for multiboot header
+#define TAG_SIZE(x) (((x)-1) / MULTIBOOT_TAG_ALIGN + 1)
+
+extern struct multiboot_tag *mb_tag;