aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHeinrich Schuchardt2021-01-29 12:35:51 +0100
committerHeinrich Schuchardt2021-01-29 20:22:40 +0100
commit18dd984c56b339be74e390df80fd3dc21b7a9b58 (patch)
tree94d44ddf983d8b5b9cdeeae6df5c9d7cff1142ab
parent850d27b4b9d4cc3244ff4331b90b0376a7e9691e (diff)
efi_loader: add Linux magic to aarch64 crt0
Add the Linux magic to the EFI file header to allow running our test programs with GRUB's linux command. Now we can dump the fixed-up device tree with our dtbdump.efi tool. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
-rw-r--r--arch/arm/lib/crt0_aarch64_efi.S3
-rw-r--r--include/asm-generic/pe.h2
2 files changed, 4 insertions, 1 deletions
diff --git a/arch/arm/lib/crt0_aarch64_efi.S b/arch/arm/lib/crt0_aarch64_efi.S
index 368933ecf2d..492195f7654 100644
--- a/arch/arm/lib/crt0_aarch64_efi.S
+++ b/arch/arm/lib/crt0_aarch64_efi.S
@@ -18,7 +18,8 @@
.globl ImageBase
ImageBase:
.short IMAGE_DOS_SIGNATURE /* 'MZ' */
- .skip 58 /* 'MZ' + pad + offset == 64 */
+ .skip 54 /* 'MZ' + pad + offset == 64 */
+ .long LINUX_ARM64_MAGIC /* For GRUB's linux command */
.long pe_header - ImageBase /* Offset to the PE header */
pe_header:
.long IMAGE_NT_SIGNATURE /* 'PE' */
diff --git a/include/asm-generic/pe.h b/include/asm-generic/pe.h
index b247519a3d5..a1df7471348 100644
--- a/include/asm-generic/pe.h
+++ b/include/asm-generic/pe.h
@@ -51,4 +51,6 @@
#define IMAGE_SUBSYSTEM_EFI_RUNTIME_DRIVER 12
#define IMAGE_SUBSYSTEM_EFI_ROM 13
+#define LINUX_ARM64_MAGIC 0x644d5241
+
#endif /* _ASM_PE_H */