[PATCH v1 41/54] filetype: add new filetype for efi-stubbed ARM zImages

Ahmad Fatoum a.fatoum at pengutronix.de
Thu Dec 18 02:38:01 PST 2025


To allow booting EFI payloads on ARM and to control whether EFI stub or
normal DT boot should be attempted, add a filetype for EFI-stubbed
zImages.

Signed-off-by: Ahmad Fatoum <a.fatoum at pengutronix.de>
---
 common/filetype.c  | 4 +++-
 include/filetype.h | 1 +
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/common/filetype.c b/common/filetype.c
index 196591698768..b82667c30a4b 100644
--- a/common/filetype.c
+++ b/common/filetype.c
@@ -31,6 +31,7 @@ static const struct filetype_str filetype_str[] = {
 	[filetype_unknown] = { "unknown", "unknown" },
 	[filetype_empty] = { "empty", "empty" },
 	[filetype_arm_zimage] = { "ARM Linux zImage", "arm-zimage" },
+	[filetype_arm_efi_zimage] = { "ARM/EFI Linux zImage", "arm-efi-zimage" },
 	[filetype_lzo_compressed] = { "LZO compressed", "lzo" },
 	[filetype_lz4_compressed] = { "LZ4 compressed", "lz4" },
 	[filetype_arm_barebox] = { "ARM barebox image", "arm-barebox" },
@@ -441,7 +442,7 @@ enum filetype file_detect_type(const void *_buf, size_t bufsize)
 	if (is_barebox_arm_head(_buf))
 		return filetype_arm_barebox;
 	if (buf[9] == 0x016f2818 || buf[9] == 0x18286f01)
-		return filetype_arm_zimage;
+		return is_dos_exe(buf8) ? filetype_arm_efi_zimage : filetype_arm_zimage;
 
 	if (is_dos_exe(buf8))
 		return filetype_exe;
@@ -585,6 +586,7 @@ bool filetype_is_barebox_image(enum filetype ft)
 bool filetype_is_linux_efi_image(enum filetype ft)
 {
 	switch (ft) {
+	case filetype_arm_efi_zimage:
 	case filetype_arm64_efi_linux_image:
 	case filetype_riscv_efi_linux_image:
 	case filetype_x86_efi_linux_image:
diff --git a/include/filetype.h b/include/filetype.h
index 283b8fee4c70..aed02fcc2566 100644
--- a/include/filetype.h
+++ b/include/filetype.h
@@ -13,6 +13,7 @@ enum filetype {
 	filetype_unknown,
 	filetype_empty,
 	filetype_arm_zimage,
+	filetype_arm_efi_zimage,
 	filetype_lzo_compressed,
 	filetype_lz4_compressed,
 	filetype_arm_barebox,
-- 
2.47.3




More information about the barebox mailing list