diff mbox series

[1/3] arm/edk2-firmware: update to 202508

Message ID 20250912212725.95249-1-jon.mason@arm.com
State New
Headers show
Series [1/3] arm/edk2-firmware: update to 202508 | expand

Commit Message

Jon Mason Sept. 12, 2025, 9:27 p.m. UTC
Update edk2-firmware to the latest release and update edk2-basetools to
match this update (as the previous update did not do this).

Also, fix clang compile issues.  This change should fix any clang
compile issues since edk2-stable202108 (completely untested, but that is
when the relevant variables were renamed).

Signed-off-by: Jon Mason <jon.mason@arm.com>
---
 ...-native_202502.bb => edk2-basetools-native_202508.bb} | 2 +-
 meta-arm/recipes-bsp/uefi/edk2-firmware.inc              | 3 ++-
 meta-arm/recipes-bsp/uefi/edk2-firmware_202505.bb        | 9 ---------
 meta-arm/recipes-bsp/uefi/edk2-firmware_202508.bb        | 6 ++++++
 .../0002-Enforce-using-good-old-BFD-linker.patch         | 8 ++++----
 meta-arm/recipes-bsp/uefi/sbsa-acs_7.2.2.bb              | 8 +++++++-
 6 files changed, 20 insertions(+), 16 deletions(-)
 rename meta-arm/recipes-bsp/uefi/{edk2-basetools-native_202502.bb => edk2-basetools-native_202508.bb} (93%)
 delete mode 100644 meta-arm/recipes-bsp/uefi/edk2-firmware_202505.bb
 create mode 100644 meta-arm/recipes-bsp/uefi/edk2-firmware_202508.bb
diff mbox series

Patch

diff --git a/meta-arm/recipes-bsp/uefi/edk2-basetools-native_202502.bb b/meta-arm/recipes-bsp/uefi/edk2-basetools-native_202508.bb
similarity index 93%
rename from meta-arm/recipes-bsp/uefi/edk2-basetools-native_202502.bb
rename to meta-arm/recipes-bsp/uefi/edk2-basetools-native_202508.bb
index 0c08fce758d7..3c47b91a9069 100644
--- a/meta-arm/recipes-bsp/uefi/edk2-basetools-native_202502.bb
+++ b/meta-arm/recipes-bsp/uefi/edk2-basetools-native_202508.bb
@@ -10,7 +10,7 @@  LICENSE = "BSD-2-Clause-Patent"
 SRC_URI = "git://github.com/tianocore/edk2.git;branch=master;protocol=https"
 LIC_FILES_CHKSUM = "file://License.txt;md5=2b415520383f7964e96700ae12b4570a"
 
-SRCREV = "b158dad150bf02879668f72ce306445250838201"
+SRCREV = "d46aa46c8361194521391aa581593e556c707c6e"
 
 UPSTREAM_CHECK_GITTAGREGEX = "^edk2-stable(?P<pver>\d+)$"
 
diff --git a/meta-arm/recipes-bsp/uefi/edk2-firmware.inc b/meta-arm/recipes-bsp/uefi/edk2-firmware.inc
index a1840b16ec7d..a5590d3b7274 100644
--- a/meta-arm/recipes-bsp/uefi/edk2-firmware.inc
+++ b/meta-arm/recipes-bsp/uefi/edk2-firmware.inc
@@ -54,6 +54,7 @@  EDK2_BUILD_MODE ?= "${@bb.utils.contains('EDK2_BUILD_RELEASE', '1', 'RELEASE', '
 # Baremetal, no need for a C library
 DEPENDS:remove = "virtual/${TARGET_PREFIX}compilerlibs virtual/libc"
 DEPENDS += "util-linux-native iasl-native"
+DEPENDS:append:toolchain-clang = " lld-native"
 
 inherit deploy
 
@@ -77,7 +78,7 @@  EDK_COMPILER ?= "GCC5"
 export GCC5_AARCH64_PREFIX = "${TARGET_PREFIX}"
 export GCC5_ARM_PREFIX = "${TARGET_PREFIX}"
 
-EDK_COMPILER:toolchain-clang = "CLANG38"
+EDK_COMPILER:toolchain-clang = "CLANGDWARF"
 export CLANG38_AARCH64_PREFIX = "${TARGET_PREFIX}"
 export CLANG38_ARM_PREFIX = "${TARGET_PREFIX}"
 
diff --git a/meta-arm/recipes-bsp/uefi/edk2-firmware_202505.bb b/meta-arm/recipes-bsp/uefi/edk2-firmware_202505.bb
deleted file mode 100644
index 89e532593991..000000000000
--- a/meta-arm/recipes-bsp/uefi/edk2-firmware_202505.bb
+++ /dev/null
@@ -1,9 +0,0 @@ 
-require recipes-bsp/uefi/edk2-firmware.inc
-
-SRCREV_edk2           ?= "6951dfe7d59d144a3a980bd7eda699db2d8554ac"
-SRCREV_edk2-platforms ?= "564f6509e89f45b25d97db2772ca9b3bec8b3ed5"
-
-# FIXME - clang is having issues with antlr
-TOOLCHAIN:aarch64 = "gcc"
-
-SRC_URI += " file://edk2_fix_epoch.patch"
diff --git a/meta-arm/recipes-bsp/uefi/edk2-firmware_202508.bb b/meta-arm/recipes-bsp/uefi/edk2-firmware_202508.bb
new file mode 100644
index 000000000000..6a82835f054c
--- /dev/null
+++ b/meta-arm/recipes-bsp/uefi/edk2-firmware_202508.bb
@@ -0,0 +1,6 @@ 
+require recipes-bsp/uefi/edk2-firmware.inc
+
+SRCREV_edk2           ?= "d46aa46c8361194521391aa581593e556c707c6e"
+SRCREV_edk2-platforms ?= "d82aa92c1d360c1b53ccad4dc45bdd8164a560d5"
+
+SRC_URI += " file://edk2_fix_epoch.patch"
diff --git a/meta-arm/recipes-bsp/uefi/sbsa-acs/0002-Enforce-using-good-old-BFD-linker.patch b/meta-arm/recipes-bsp/uefi/sbsa-acs/0002-Enforce-using-good-old-BFD-linker.patch
index f73194d265b8..c05ef32479f3 100644
--- a/meta-arm/recipes-bsp/uefi/sbsa-acs/0002-Enforce-using-good-old-BFD-linker.patch
+++ b/meta-arm/recipes-bsp/uefi/sbsa-acs/0002-Enforce-using-good-old-BFD-linker.patch
@@ -1,4 +1,4 @@ 
-From 76665f48f5a4672d8c8bed3c57822307193b2b72 Mon Sep 17 00:00:00 2001
+From da0d96f0dc5fceafa34a7cc7d4d05f6f89336a87 Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Wed, 7 Apr 2021 00:16:07 -0400
 Subject: [PATCH] Enforce using good old BFD linker
@@ -25,7 +25,7 @@  Signed-off-by: Khem Raj <raj.khem@gmail.com>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/BaseTools/Conf/tools_def.template b/BaseTools/Conf/tools_def.template
-index ffeb22742142..ba24113d216c 100755
+index 0caa1c90018f..0b62fdc9ee72 100755
 --- a/BaseTools/Conf/tools_def.template
 +++ b/BaseTools/Conf/tools_def.template
 @@ -928,7 +928,7 @@ DEFINE GCC_ARM_CC_XIPFLAGS         = -mno-unaligned-access
@@ -34,6 +34,6 @@  index ffeb22742142..ba24113d216c 100755
  DEFINE GCC_RISCV64_CC_XIPFLAGS     = -mstrict-align -mgeneral-regs-only
 -DEFINE GCC_DLINK2_FLAGS_COMMON     = -Wl,--script=$(EDK_TOOLS_PATH)/Scripts/GccBase.lds
 +DEFINE GCC_DLINK2_FLAGS_COMMON     = -fuse-ld=bfd -Wl,--script=$(EDK_TOOLS_PATH)/Scripts/GccBase.lds
- DEFINE GCC_IA32_X64_DLINK_COMMON   = -nostdlib --pie --fatal-warnings -z,noexecstack --gc-sections
- DEFINE GCC_ARM_AARCH64_DLINK_COMMON= -Wl,--emit-relocs -nostdlib -Wl,--gc-sections -u $(IMAGE_ENTRY_POINT) -Wl,-e,$(IMAGE_ENTRY_POINT),-Map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map -Wl,--fatal-warnings -Wl,-z,noexecstack
+ DEFINE GCC_ARM_AARCH64_DLINK_COMMON= -Wl,--emit-relocs -nostdlib -Wl,--gc-sections -u $(IMAGE_ENTRY_POINT) -Wl,-e,$(IMAGE_ENTRY_POINT),-Map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map
  DEFINE GCC_LOONGARCH64_DLINK_COMMON= -Wl,--emit-relocs -nostdlib -Wl,--gc-sections -u $(IMAGE_ENTRY_POINT) -Wl,-e,$(IMAGE_ENTRY_POINT),-Map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map
+ DEFINE GCC_ARM_DLINK_FLAGS         = DEF(GCC_ARM_AARCH64_DLINK_COMMON) -z common-page-size=0x20 -Wl,--pic-veneer
diff --git a/meta-arm/recipes-bsp/uefi/sbsa-acs_7.2.2.bb b/meta-arm/recipes-bsp/uefi/sbsa-acs_7.2.2.bb
index 2dd1de48c146..c037725ac66f 100644
--- a/meta-arm/recipes-bsp/uefi/sbsa-acs_7.2.2.bb
+++ b/meta-arm/recipes-bsp/uefi/sbsa-acs_7.2.2.bb
@@ -1,4 +1,4 @@ 
-require recipes-bsp/uefi/edk2-firmware_202505.bb
+require recipes-bsp/uefi/edk2-firmware_202508.bb
 PROVIDES:remove = "virtual/bootloader"
 
 LICENSE += "& Apache-2.0"
@@ -21,6 +21,12 @@  SRCREV_libc = "caea801aac338aa60f85a7c10148ca0b4440fff3"
 
 UPSTREAM_CHECK_URI = "https://github.com/ARM-software/sbsa-acs/releases"
 
+# FIXME - some weirdness here with clang.  Looks like there are some
+# hardcoded assembly instructions which need feature enablement that
+# magically happens in gcc, but needs explicit enablement in clang.
+# Hardcode GCC until this can be bottomed out.
+TOOLCHAIN:aarch64 = "gcc"
+
 COMPATIBLE_HOST = "aarch64.*-linux"
 COMPATIBLE_MACHINE = ""
 PACKAGE_ARCH = "${TUNE_PKGARCH}"