arm64: efi: enable generic EFI compressed boot
authorArd Biesheuvel <ardb@kernel.org>
Sun, 1 May 2022 23:10:03 +0000 (01:10 +0200)
committerArd Biesheuvel <ardb@kernel.org>
Tue, 20 Sep 2022 10:01:27 +0000 (12:01 +0200)
Wire up the generic EFI zboot support for arm64.

Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Tested-by: Jeremy Linton <jeremy.linton@arm.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
arch/arm64/Makefile
arch/arm64/boot/.gitignore
arch/arm64/boot/Makefile

index 6d9d4a5..a82bb35 100644 (file)
@@ -151,12 +151,17 @@ libs-$(CONFIG_EFI_STUB) += $(objtree)/drivers/firmware/efi/libstub/lib.a
 
 # Default target when executing plain make
 boot           := arch/arm64/boot
+
+ifeq ($(CONFIG_EFI_ZBOOT),)
 KBUILD_IMAGE   := $(boot)/Image.gz
+else
+KBUILD_IMAGE   := $(boot)/vmlinuz.efi
+endif
 
-all:   Image.gz
+all:   $(notdir $(KBUILD_IMAGE))
 
 
-Image: vmlinux
+Image vmlinuz.efi: vmlinux
        $(Q)$(MAKE) $(build)=$(boot) $(boot)/$@
 
 Image.%: Image
index 9a7a900..af5dc61 100644 (file)
@@ -1,3 +1,4 @@
 # SPDX-License-Identifier: GPL-2.0-only
 Image
 Image.gz
+vmlinuz*
index a0e3ded..c65aee0 100644 (file)
@@ -38,3 +38,9 @@ $(obj)/Image.lzo: $(obj)/Image FORCE
 
 $(obj)/Image.zst: $(obj)/Image FORCE
        $(call if_changed,zstd)
+
+EFI_ZBOOT_PAYLOAD      := Image
+EFI_ZBOOT_BFD_TARGET   := elf64-littleaarch64
+EFI_ZBOOT_MACH_TYPE    := ARM64
+
+include $(srctree)/drivers/firmware/efi/libstub/Makefile.zboot