Page MenuHomeFreeBSD

D38255.1794709974.diff
No OneTemporary

Authored By
Unknown
Size
842 B
Referenced Files
None
Subscribers
None

D38255.1794709974.diff

diff --git a/stand/kboot/arch/aarch64/load_addr.c b/stand/kboot/arch/aarch64/load_addr.c
--- a/stand/kboot/arch/aarch64/load_addr.c
+++ b/stand/kboot/arch/aarch64/load_addr.c
@@ -152,3 +152,22 @@
printf("Falling back to crazy address %#lx\n", s);
return (s);
}
+
+void
+bi_loadsmap(struct preloaded_file *kfp)
+{
+
+ if (efi_systbl_phys)
+ file_addmetadata(kfp, MODINFOMD_FW_HANDLE, sizeof(efi_systbl_phys), &efi_systbl_phys);
+
+ /*
+ * If we have efi_map_hdr, then it's a pointer to the PA where this
+ * memory map lives. The trampoline code will copy it over. If we don't
+ * have it, we use whatever we found in /proc/iomap.
+ */
+ if (efi_map_hdr != NULL) {
+ file_addmetadata(kfp, MODINFOMD_EFI_MAP, efi_map_size, efi_map_hdr);
+ return;
+ }
+ panic("Can't get UEFI memory map, nor a pointer to it, can't proceed.\n");
+}

File Metadata

Mime Type
text/plain
Expires
Sun, Nov 15, 2:32 AM (17 h, 56 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
41736196
Default Alt Text
D38255.1794709974.diff (842 B)

Event Timeline