Define MULTIBOOT2_ARCHITECTURE_AARCH64 to support AARCH64 architecture
+ Define MULTIBOOT2_TAG_TYPE_ELF64_SECTIONS and struct
multiboot_tag_elf64_sections   as a version of elf_sections which
correctly aligns the elf section headers   to a 64 bit boundary

Signed-off-by: Chris Plant <ch...@monkeyircd.org>
---
 include/multiboot2.h | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/include/multiboot2.h b/include/multiboot2.h
index 5693923c0..e5071f6f6 100644
--- a/include/multiboot2.h
+++ b/include/multiboot2.h
@@ -63,6 +63,7 @@
 #define MULTIBOOT_TAG_TYPE_EFI32_IH          19
 #define MULTIBOOT_TAG_TYPE_EFI64_IH          20
 #define MULTIBOOT_TAG_TYPE_LOAD_BASE_ADDR    21
+#define MULTIBOOT_TAG_TYPE_ELF64_SECTIONS       22
 
 #define MULTIBOOT_HEADER_TAG_END  0
 #define MULTIBOOT_HEADER_TAG_INFORMATION_REQUEST  1
@@ -77,6 +78,7 @@
 
 #define MULTIBOOT2_ARCHITECTURE_I386  0
 #define MULTIBOOT2_ARCHITECTURE_MIPS32  4
+#define MULTIBOOT2_ARCHITECTURE_AARCH64 8
 #define MULTIBOOT_HEADER_TAG_OPTIONAL 1
 
 #define MULTIBOOT_LOAD_PREFERENCE_NONE 0
@@ -321,6 +323,18 @@ struct multiboot_tag_elf_sections
   char sections[0];
 };
 
+struct multiboot_tag_elf64_sections
+{
+  multiboot_uint32_t type;
+  multiboot_uint32_t size;
+  multiboot_uint32_t num;
+  multiboot_uint32_t entsize;
+  multiboot_uint32_t shndx;
+       multiboot_uint32_t reserved;
+  char sections[0];
+};
+
+
 struct multiboot_tag_apm
 {
   multiboot_uint32_t type;
-- 
2.28.0


_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/grub-devel

Reply via email to