Browse Source

boot/edk2: bump to version edk2-stable202411

Sync edk2-platforms with the last commit merged at the edk2 release
date (2024-11-22).

See:
https://github.com/tianocore/edk2/releases/tag/edk2-stable202411

Runtime tested with tests using EDK2 package: TestFwts, TestEdk2,
TestIso9660Grub2EFI, TestIso9660Grub2Hybrid, TestGrubi386EFI,
TestGrubX8664EFI, TestGrubAArch64EFI, TestGrubRiscV64EFI.

Runtime tested with defconfig using EDK2 package:
qemu_aarch64_sbsa_defconfig, qemu_riscv64_virt_efi_defconfig.

Cc: Julien Olivain <ju.o@free.fr>
Signed-off-by: Romain Naour <romain.naour@smile.fr>
Signed-off-by: Julien Olivain <ju.o@free.fr>
Romain Naour 7 months ago
parent
commit
0919d98e83

+ 0 - 129
boot/edk2/0001-OvmfPkg-QemuVideoDxe-add-feature-PCD-to-remap-frameb.patch

@@ -1,129 +0,0 @@
-From 921c78f57a16b00debd58899a48e7045015c374b Mon Sep 17 00:00:00 2001
-From: Ard Biesheuvel <ardb@kernel.org>
-Date: Mon, 17 Jun 2024 17:07:41 +0200
-Subject: [PATCH] OvmfPkg/QemuVideoDxe: add feature PCD to remap framebuffer
- W/C
-
-Some platforms (such as SBSA-QEMU on recent builds of the emulator) only
-tolerate misaligned accesses to normal memory, and raise alignment
-faults on such accesses to device memory, which is the default for PCIe
-MMIO BARs.
-
-When emulating a PCIe graphics controller, the framebuffer is typically
-exposed via a MMIO BAR, while the disposition of the region is closer to
-memory (no side effects on reads or writes, except for the changing
-picture on the screen; direct random access to any pixel in the image).
-
-In order to permit the use of such controllers on platforms that only
-tolerate these types of accesses for normal memory, it is necessary to
-remap the memory. Use the DXE services to set the desired capabilities
-and attributes.
-
-Hide this behavior under a feature PCD so only platforms that really
-need it can enable it. (OVMF on x86 has no need for this)
-
-Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
-Upstream: https://github.com/tianocore/edk2/commit/c1d1910be6e04a8b1a73090cf2881fb698947a6e
-Signed-off-by: Romain Naour <romain.naour@smile.fr>
----
- OvmfPkg/OvmfPkg.dec                   |  5 +++++
- OvmfPkg/QemuVideoDxe/Gop.c            | 19 +++++++++++++++++++
- OvmfPkg/QemuVideoDxe/Qemu.h           |  2 +-
- OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf |  4 ++++
- 4 files changed, 29 insertions(+), 1 deletion(-)
-
-diff --git a/OvmfPkg/OvmfPkg.dec b/OvmfPkg/OvmfPkg.dec
-index 51be9a5959..2c40de8a13 100644
---- a/OvmfPkg/OvmfPkg.dec
-+++ b/OvmfPkg/OvmfPkg.dec
-@@ -444,3 +444,8 @@
- 
-   ## This feature flag indicates the firmware build supports secure boot.
-   gUefiOvmfPkgTokenSpaceGuid.PcdSecureBootSupported|FALSE|BOOLEAN|0x6d
-+
-+  ## Whether QemuVideoDxe should perform a EFI_MEMORY_WC remap of the PCI
-+  #  framebuffer. This might be required on platforms that do not tolerate
-+  #  misaligned accesses otherwise.
-+  gUefiOvmfPkgTokenSpaceGuid.PcdRemapFrameBufferWriteCombine|FALSE|BOOLEAN|0x75
-diff --git a/OvmfPkg/QemuVideoDxe/Gop.c b/OvmfPkg/QemuVideoDxe/Gop.c
-index b11eed7558..a29c025afd 100644
---- a/OvmfPkg/QemuVideoDxe/Gop.c
-+++ b/OvmfPkg/QemuVideoDxe/Gop.c
-@@ -9,6 +9,8 @@
- 
- #include "Qemu.h"
- 
-+#include <Library/DxeServicesTableLib.h>
-+
- STATIC
- VOID
- QemuVideoCompleteModeInfo (
-@@ -54,6 +56,7 @@ QemuVideoCompleteModeData (
-   EFI_GRAPHICS_OUTPUT_MODE_INFORMATION  *Info;
-   EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR     *FrameBufDesc;
-   QEMU_VIDEO_MODE_DATA                  *ModeData;
-+  EFI_STATUS                            Status;
- 
-   ModeData = &Private->ModeData[Mode->Mode];
-   Info     = Mode->Info;
-@@ -79,6 +82,22 @@ QemuVideoCompleteModeData (
-     (UINT64)Mode->FrameBufferSize
-     ));
- 
-+  if (FeaturePcdGet (PcdRemapFrameBufferWriteCombine)) {
-+    Status = gDS->SetMemorySpaceCapabilities (
-+                    FrameBufDesc->AddrRangeMin,
-+                    FrameBufDesc->AddrLen,
-+                    EFI_MEMORY_UC | EFI_MEMORY_WC | EFI_MEMORY_XP
-+                    );
-+    ASSERT_EFI_ERROR (Status);
-+
-+    Status = gDS->SetMemorySpaceAttributes (
-+                    FrameBufDesc->AddrRangeMin,
-+                    FrameBufDesc->AddrLen,
-+                    EFI_MEMORY_WC | EFI_MEMORY_XP
-+                    );
-+    ASSERT_EFI_ERROR (Status);
-+  }
-+
-   FreePool (FrameBufDesc);
-   return EFI_SUCCESS;
- }
-diff --git a/OvmfPkg/QemuVideoDxe/Qemu.h b/OvmfPkg/QemuVideoDxe/Qemu.h
-index 57341a0bbf..a3da725fbf 100644
---- a/OvmfPkg/QemuVideoDxe/Qemu.h
-+++ b/OvmfPkg/QemuVideoDxe/Qemu.h
-@@ -13,7 +13,7 @@
- #ifndef _QEMU_H_
- #define _QEMU_H_
- 
--#include <Uefi.h>
-+#include <PiDxe.h>
- #include <Protocol/GraphicsOutput.h>
- #include <Protocol/PciIo.h>
- #include <Protocol/DriverSupportedEfiVersion.h>
-diff --git a/OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf b/OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf
-index 43a6e07faa..4c0870171b 100644
---- a/OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf
-+++ b/OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf
-@@ -44,6 +44,7 @@
- 
- [LibraryClasses]
-   BaseMemoryLib
-+  DxeServicesTableLib
-   FrameBufferBltLib
-   DebugLib
-   DevicePathLib
-@@ -61,6 +62,9 @@
-   gEfiDevicePathProtocolGuid                    # PROTOCOL BY_START
-   gEfiPciIoProtocolGuid                         # PROTOCOL TO_START
- 
-+[FeaturePcd]
-+  gUefiOvmfPkgTokenSpaceGuid.PcdRemapFrameBufferWriteCombine
-+
- [Pcd]
-   gUefiOvmfPkgTokenSpaceGuid.PcdOvmfHostBridgePciDevId
-   gUefiOvmfPkgTokenSpaceGuid.PcdVideoResolutionSource
--- 
-2.45.0
-

+ 1 - 1
boot/edk2/edk2.hash

@@ -1,3 +1,3 @@
 # Locally calculated
-sha256  4595b9d9d14c06bd03f575e4b7623574a4a874ef465652ecdc224099a5b14fc7  edk2-edk2-stable202405-git4.tar.gz
+sha256  e3e9ee3662335fac5df1f30f2027cf3c8d776bf2c52a77795a6d80766522e044  edk2-edk2-stable202411-git4.tar.gz
 sha256  50ce20c9cfdb0e19ee34fe0a51fc0afe961f743697b068359ab2f862b494df80  License.txt

+ 1 - 1
boot/edk2/edk2.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-EDK2_VERSION = edk2-stable202405
+EDK2_VERSION = edk2-stable202411
 EDK2_SITE = https://github.com/tianocore/edk2
 EDK2_SITE_METHOD = git
 EDK2_LICENSE = BSD-2-Clause-Patent

+ 1 - 1
package/edk2-platforms/edk2-platforms.hash

@@ -1,3 +1,3 @@
 # Locally calculated
-sha256  41fa720ac644ec0523c576ff28eba5e0308c9649111ce42f7d408b8d8b30eaf5  edk2-platforms-3f08401365d67e10924c774e6c3f64be56bc15b6.tar.gz
+sha256  6185750107616c263ed43157094e6fe2c1bfc1b55a2c9d98b322418784264e73  edk2-platforms-f10cc760cf3f7eb693822de1347e71173944e44a.tar.gz
 sha256  50ce20c9cfdb0e19ee34fe0a51fc0afe961f743697b068359ab2f862b494df80  License.txt

+ 1 - 1
package/edk2-platforms/edk2-platforms.mk

@@ -5,7 +5,7 @@
 ################################################################################
 
 # Keep in sync with latest commit as of the release date for boot/edk2
-EDK2_PLATFORMS_VERSION = 3f08401365d67e10924c774e6c3f64be56bc15b6
+EDK2_PLATFORMS_VERSION = f10cc760cf3f7eb693822de1347e71173944e44a
 EDK2_PLATFORMS_SITE = $(call github,tianocore,edk2-platforms,$(EDK2_PLATFORMS_VERSION))
 EDK2_PLATFORMS_LICENSE = BSD-2-Clause-Patent
 EDK2_PLATFORMS_LICENSE_FILES = License.txt