summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMikko Rapeli <mikko.rapeli@linaro.org>2025-05-30 14:37:42 +0300
committerRichard Purdie <richard.purdie@linuxfoundation.org>2025-06-02 22:17:24 +0100
commit3f61776490b599eae67448cf18c2b59c2a4245d8 (patch)
tree4b6f81de58811c76098aa48de24cea2ee14ca83c
parentc9cb41e293556e64bb8adb0fabd6b9608acb3211 (diff)
downloadpoky-3f61776490b599eae67448cf18c2b59c2a4245d8.tar.gz
image_types_wic.bbclass: depend on grub-efi and systemd-boot on aarch64, systemd-boot on arm
On x86 family builds, grub and systemd-boot are always included and thus get built and deployed before wic image builds. On aarch64 builds that was not the case. Result is that some builds added systemd-boot binaries to the wic image ESP partition and some not, though bugs in wic plugins contributed here too since missing files were silently ignored. Boot of such images fails since firmware is not able to load the default EFI binaries. Adding EFI_PROVIDER to WKS_FILE_DEPENDS_BOOTLOADERS is not possible because of parsing order so adding grub-efi and systemd-boot to aarch64 and systemd-boot to arm depends which makes sure their do_deploy is always executed before wic image is generated. Thus systemd-boot and grub binaries will get copied from deploy directory to the wic image ESP partition, and boot of the images succeeds. (From OE-Core rev: 9975b72291cd2e1ad79635e903e6a744251d91bf) Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/classes-recipe/image_types_wic.bbclass2
1 files changed, 2 insertions, 0 deletions
diff --git a/meta/classes-recipe/image_types_wic.bbclass b/meta/classes-recipe/image_types_wic.bbclass
index 61f028bd7b..90bf8c7a60 100644
--- a/meta/classes-recipe/image_types_wic.bbclass
+++ b/meta/classes-recipe/image_types_wic.bbclass
@@ -111,6 +111,8 @@ WKS_FILE_DEPENDS_DEFAULT += "bmaptool-native cdrtools-native btrfs-tools-native
111# Unified kernel images need objcopy 111# Unified kernel images need objcopy
112WKS_FILE_DEPENDS_DEFAULT += "virtual/cross-binutils" 112WKS_FILE_DEPENDS_DEFAULT += "virtual/cross-binutils"
113WKS_FILE_DEPENDS_BOOTLOADERS = "" 113WKS_FILE_DEPENDS_BOOTLOADERS = ""
114WKS_FILE_DEPENDS_BOOTLOADERS:aarch64 = "grub-efi systemd-boot"
115WKS_FILE_DEPENDS_BOOTLOADERS:arm = "systemd-boot"
114WKS_FILE_DEPENDS_BOOTLOADERS:x86 = "syslinux grub-efi systemd-boot os-release" 116WKS_FILE_DEPENDS_BOOTLOADERS:x86 = "syslinux grub-efi systemd-boot os-release"
115WKS_FILE_DEPENDS_BOOTLOADERS:x86-64 = "syslinux systemd-boot os-release" 117WKS_FILE_DEPENDS_BOOTLOADERS:x86-64 = "syslinux systemd-boot os-release"
116WKS_FILE_DEPENDS_BOOTLOADERS:x86-x32 = "syslinux grub-efi" 118WKS_FILE_DEPENDS_BOOTLOADERS:x86-x32 = "syslinux grub-efi"