|
|
a85e8e |
From 0df1a50e41fb12fbeb6709575e5f12d64ed73b66 Mon Sep 17 00:00:00 2001
|
|
|
a85e8e |
From: Stephane Rochoy <sheda>
|
|
|
a85e8e |
Date: Sun, 22 Jun 2014 01:35:52 +0200
|
|
|
a85e8e |
Subject: [PATCH 085/260] * grub-core/loader/i386/bsd.c (grub_netbsd_boot):
|
|
|
a85e8e |
Pass pointer to EFI system table.
|
|
|
a85e8e |
|
|
|
a85e8e |
---
|
|
|
a85e8e |
ChangeLog | 5 +++++
|
|
|
a85e8e |
grub-core/loader/i386/bsd.c | 8 ++++++++
|
|
|
a85e8e |
include/grub/i386/netbsd_bootinfo.h | 7 +++++++
|
|
|
a85e8e |
3 files changed, 20 insertions(+)
|
|
|
a85e8e |
|
|
|
a85e8e |
diff --git a/ChangeLog b/ChangeLog
|
|
|
a85e8e |
index abf8f4b27..0cdd095a4 100644
|
|
|
a85e8e |
--- a/ChangeLog
|
|
|
a85e8e |
+++ b/ChangeLog
|
|
|
a85e8e |
@@ -1,5 +1,10 @@
|
|
|
a85e8e |
2014-06-21 Stephane Rochoy <sheda>
|
|
|
a85e8e |
|
|
|
a85e8e |
+ * grub-core/loader/i386/bsd.c (grub_netbsd_boot): Pass pointer to
|
|
|
a85e8e |
+ EFI system table.
|
|
|
a85e8e |
+
|
|
|
a85e8e |
+2014-06-21 Stephane Rochoy <sheda>
|
|
|
a85e8e |
+
|
|
|
a85e8e |
* grub-core/commands/efi/lsefisystab.c (grub_cmd_lsefisystab): Show
|
|
|
a85e8e |
EFI system table physical address.
|
|
|
a85e8e |
|
|
|
a85e8e |
diff --git a/grub-core/loader/i386/bsd.c b/grub-core/loader/i386/bsd.c
|
|
|
a85e8e |
index 41ef9109e..8f691e0e2 100644
|
|
|
a85e8e |
--- a/grub-core/loader/i386/bsd.c
|
|
|
a85e8e |
+++ b/grub-core/loader/i386/bsd.c
|
|
|
a85e8e |
@@ -1145,6 +1145,14 @@ grub_netbsd_boot (void)
|
|
|
a85e8e |
if (err)
|
|
|
a85e8e |
return err;
|
|
|
a85e8e |
|
|
|
a85e8e |
+#ifdef GRUB_MACHINE_EFI
|
|
|
a85e8e |
+ err = grub_bsd_add_meta (NETBSD_BTINFO_EFI,
|
|
|
a85e8e |
+ &grub_efi_system_table,
|
|
|
a85e8e |
+ sizeof (grub_efi_system_table));
|
|
|
a85e8e |
+ if (err)
|
|
|
a85e8e |
+ return err;
|
|
|
a85e8e |
+#endif
|
|
|
a85e8e |
+
|
|
|
a85e8e |
{
|
|
|
a85e8e |
struct bsd_tag *tag;
|
|
|
a85e8e |
tag_buf_len = 0;
|
|
|
a85e8e |
diff --git a/include/grub/i386/netbsd_bootinfo.h b/include/grub/i386/netbsd_bootinfo.h
|
|
|
a85e8e |
index e48c19b40..9b4f46041 100644
|
|
|
a85e8e |
--- a/include/grub/i386/netbsd_bootinfo.h
|
|
|
a85e8e |
+++ b/include/grub/i386/netbsd_bootinfo.h
|
|
|
a85e8e |
@@ -58,6 +58,8 @@
|
|
|
a85e8e |
#define NETBSD_BTINFO_BOOTWEDGE 10
|
|
|
a85e8e |
#define NETBSD_BTINFO_MODULES 11
|
|
|
a85e8e |
#define NETBSD_BTINFO_FRAMEBUF 12
|
|
|
a85e8e |
+#define NETBSD_BTINFO_USERCONFCOMMANDS 13
|
|
|
a85e8e |
+#define NETBSD_BTINFO_EFI 14
|
|
|
a85e8e |
|
|
|
a85e8e |
struct grub_netbsd_bootinfo
|
|
|
a85e8e |
{
|
|
|
a85e8e |
@@ -146,4 +148,9 @@ struct grub_netbsd_btinfo_framebuf
|
|
|
a85e8e |
|
|
|
a85e8e |
#define GRUB_NETBSD_MAX_ROOTDEVICE_LEN 16
|
|
|
a85e8e |
|
|
|
a85e8e |
+struct grub_netbsd_btinfo_efi
|
|
|
a85e8e |
+{
|
|
|
a85e8e |
+ void *pa_systbl; /* Physical address of the EFI System Table */
|
|
|
a85e8e |
+};
|
|
|
a85e8e |
+
|
|
|
a85e8e |
#endif
|
|
|
a85e8e |
--
|
|
|
a85e8e |
2.13.0
|
|
|
a85e8e |
|