@@ -1,6 +1,8 @@
FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
-SRC_URI += "file://uefi-secureboot.cfg"
+SRC_URI += "file://uefi-secureboot.cfg \
+ file://0001-efi_loader-fix-building-with-CONFIG_EFI_VARIABLES_PR.patch \
+ "
inherit sbsign
new file mode 100644
@@ -0,0 +1,67 @@
+From 8f5501a6118a8b889bac710560d2ba6ed420dab3 Mon Sep 17 00:00:00 2001
+From: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
+Date: Wed, 24 Jun 2026 07:48:19 +0200
+Subject: [PATCH] efi_loader: fix building with CONFIG_EFI_VARIABLES_PRESEED=y
+
+Since commit bd3f9ee679b4 ("kbuild: Bump the build system to 6.1")
+out-of-tree builds with CONFIG_EFI_VARIABLES_PRESEED=y fail with errors
+like:
+
+ ../lib/efi_loader/efi_var_seed.S:14: Error: file not found:
+ ubootefi.var
+
+For out-of-tree build we cannot use CONFIG_EFI_VAR_SEED_FILE in the
+.incbin statement of file efi_var_seed.S.
+
+* We have to prepend $(srctree) if the path is relative.
+* We must not prepend $(srctree) if the path is absolute.
+
+Fixes: bd3f9ee679b4 ("kbuild: Bump the build system to 6.1")
+Reported-by: Jon Mason <jon.mason@arm.com>
+Closes: https://lore.kernel.org/u-boot/CAPoiz9zg4OXgHo5J3WtJHKOEuWOdCDrugWfAt6Z+d71j=+q8oA@mail.gmail.com/T/#mffaca10a9e812d03eceafad59999a02e57258b9a
+Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
+
+Upstream-Status: Submitted [https://lists.denx.de/pipermail/u-boot/2026-June/622729.html]
+Signed-off-by: Jon Mason <jon.mason@arm.com>
+---
+ lib/efi_loader/Makefile | 7 +++++--
+ lib/efi_loader/efi_var_seed.S | 4 +---
+ 2 files changed, 6 insertions(+), 5 deletions(-)
+
+diff --git a/lib/efi_loader/Makefile b/lib/efi_loader/Makefile
+index f490081f6542..d28db04b8709 100644
+--- a/lib/efi_loader/Makefile
++++ b/lib/efi_loader/Makefile
+@@ -73,8 +73,11 @@ obj-$(CONFIG_EFI_SIGNATURE_SUPPORT) += efi_signature.o
+ obj-$(CONFIG_EFI_ECPT) += efi_conformance.o
+ obj-$(CONFIG_EFI_DEBUG_SUPPORT) += efi_debug_support.o
+
+-EFI_VAR_SEED_FILE := $(subst $\",,$(CONFIG_EFI_VAR_SEED_FILE))
+-$(obj)/efi_var_seed.o: $(srctree)/$(EFI_VAR_SEED_FILE)
++TMP_VAR_SEED := $(subst $\",,$(CONFIG_EFI_VAR_SEED_FILE))
++EFI_VAR_SEED_FILE := $(if $(filter /% ,$(TMP_VAR_SEED)) \
++ ,$(TMP_VAR_SEED),$(srctree)/$(TMP_VAR_SEED))
++AFLAGS_efi_var_seed.o := -DEFI_VAR_SEED_FILE=\"$(EFI_VAR_SEED_FILE)\"
++$(obj)/efi_var_seed.o: $(EFI_VAR_SEED_FILE)
+
+ ifeq ($(CONFIG_EFI_CAPSULE_AUTHENTICATE),y)
+ capsule_crt_path=($(subst $(quote),,$(CONFIG_EFI_CAPSULE_CRT_FILE)))
+diff --git a/lib/efi_loader/efi_var_seed.S b/lib/efi_loader/efi_var_seed.S
+index e0a40cf46c8d..008a505d19ef 100644
+--- a/lib/efi_loader/efi_var_seed.S
++++ b/lib/efi_loader/efi_var_seed.S
+@@ -5,13 +5,11 @@
+ * Copyright (c) 2020, Heinrich Schuchardt <xypron.glpk@gmx.de>
+ */
+
+-#include <config.h>
+-
+ .section .rodata.efi_seed.init,"a"
+ .balign 16
+ .global __efi_var_file_begin
+ __efi_var_file_begin:
+-.incbin CONFIG_EFI_VAR_SEED_FILE
++.incbin EFI_VAR_SEED_FILE
+ .global __efi_var_file_end
+ __efi_var_file_end:
+ .balign 16
u-boot v2026.04 changed to kbuild 6.1, which broke how ubootefi.var is used. Apply patch from u-boot mailing list to address the issue. Signed-off-by: Jon Mason <jon.mason@arm.com> --- .../u-boot/u-boot-uefi-secureboot.inc | 4 +- ...uilding-with-CONFIG_EFI_VARIABLES_PR.patch | 67 +++++++++++++++++++ 2 files changed, 70 insertions(+), 1 deletion(-) create mode 100644 meta-arm/recipes-bsp/u-boot/u-boot/0001-efi_loader-fix-building-with-CONFIG_EFI_VARIABLES_PR.patch