summaryrefslogtreecommitdiff
path: root/kernel/riscv/header.S
diff options
context:
space:
mode:
authorNathan Lee <me@nwlee.tech>2026-09-13 17:46:26 -0500
committerNathan Lee <me@nwlee.tech>2026-09-13 17:46:26 -0500
commit09be8ace254a7f8bb69542d09a6b2013636123a2 (patch)
tree928011aa958624369cefeb46f9e206093a55e0a2 /kernel/riscv/header.S
parent11501f6f0c82712ea5f172f9177f2375c87d06e9 (diff)
EFI boot header support
Diffstat (limited to 'kernel/riscv/header.S')
-rw-r--r--kernel/riscv/header.S23
1 files changed, 23 insertions, 0 deletions
diff --git a/kernel/riscv/header.S b/kernel/riscv/header.S
new file mode 100644
index 0000000..cca2594
--- /dev/null
+++ b/kernel/riscv/header.S
@@ -0,0 +1,23 @@
+.section .header, "a", @progbits
+.extern _start
+#define CODE0 0x4d, 0x5a, 0, 0
+#define FLAGS 0
+#define TEXT_OFFSET 0
+#define HEADER_VERSION 0x00000002
+#define RES1 0
+#define RES2 0
+#define RES3 0
+#define MAGIC 0x5643534952
+#define MAGIC2 0x05435352
+header:
+ .byte CODE0
+ j _start
+ .quad TEXT_OFFSET
+ .quad 0 # image_size
+ .quad FLAGS
+ .int HEADER_VERSION
+ .int RES1
+ .quad RES2
+ .quad MAGIC
+ .int MAGIC2
+ .int RES3