:: commit 3c0fd2b56b389024a76df80b449d04288a23f480

mintsuki <mintsuki@protonmail.com> — 2021-04-15 02:08

parents: 06315dd809

stivale2: Make sure memory at 0x70000 is actually free as per spec

diff --git a/stage23/protos/stivale.c b/stage23/protos/stivale.c
index a9d055a2..9a93f646 100644
--- a/stage23/protos/stivale.c
+++ b/stage23/protos/stivale.c
@@ -203,6 +203,9 @@ void stivale_load(char *config, char *cmdline) {
     bool want_5lv = level5pg && (stivale_hdr.flags & (1 << 1));
     pagemap_t pagemap = stivale_build_pagemap(want_5lv, false);
 
+    // Reserve 32K at 0x70000
+    memmap_alloc_range(0x70000, 0x8000, MEMMAP_USABLE, true, true, false, false);
+
     size_t memmap_entries;
     struct e820_entry_t *memmap = get_memmap(&memmap_entries);
 
diff --git a/stage23/protos/stivale2.c b/stage23/protos/stivale2.c
index 12c32d53..7e586c5a 100644
--- a/stage23/protos/stivale2.c
+++ b/stage23/protos/stivale2.c
@@ -444,6 +444,9 @@ skip_modeset:;
         ext_mem_alloc(sizeof(struct stivale2_struct_tag_memmap) +
                        sizeof(struct e820_entry_t) * 256);
 
+    // Reserve 32K at 0x70000
+    memmap_alloc_range(0x70000, 0x8000, MEMMAP_USABLE, true, true, false, false);
+
     size_t memmap_entries;
     struct e820_entry_t *memmap = get_memmap(&memmap_entries);
 
tab: 248 wrap: offon