From 410d8c40bebeafbfdeb651709f028a77b81e9590 Mon Sep 17 00:00:00 2001 From: Miroslav Rezanina Date: Mon, 6 Feb 2023 02:27:22 -0500 Subject: [PATCH] * Mon Feb 06 2023 Miroslav Rezanina - 20221207gitfff6d81270b5-5 - edk2-Revert-ArmVirtPkg-ArmVirtQemu-enable-initial-ID-map-.patch [bz#2157656] - Resolves: bz#2157656 ([edk2] [aarch64] Unable to initialize EFI firmware when using edk2-aarch64-20221207gitfff6d81270b5-1.el9 in some hardwares) --- ...g-ArmVirtQemu-enable-initial-ID-map-.patch | 95 +++++++++++++++++++ edk2.spec | 9 +- 2 files changed, 103 insertions(+), 1 deletion(-) create mode 100644 edk2-Revert-ArmVirtPkg-ArmVirtQemu-enable-initial-ID-map-.patch diff --git a/edk2-Revert-ArmVirtPkg-ArmVirtQemu-enable-initial-ID-map-.patch b/edk2-Revert-ArmVirtPkg-ArmVirtQemu-enable-initial-ID-map-.patch new file mode 100644 index 0000000..dbdc734 --- /dev/null +++ b/edk2-Revert-ArmVirtPkg-ArmVirtQemu-enable-initial-ID-map-.patch @@ -0,0 +1,95 @@ +From fc45137e55e73a3ba59fd28868e24521a28a9a6e Mon Sep 17 00:00:00 2001 +From: Oliver Steffen +Date: Tue, 31 Jan 2023 15:32:28 +0100 +Subject: [PATCH] Revert "ArmVirtPkg/ArmVirtQemu: enable initial ID map at + early boot" + +RH-Author: Oliver Steffen +RH-MergeRequest: 25: Revert "ArmVirtPkg/ArmVirtQemu: enable initial ID map at early boot" +RH-Bugzilla: 2157656 +RH-Acked-by: Gerd Hoffmann +RH-Acked-by: Miroslav Rezanina +RH-Commit: [1/1] b236b89984f7b7890089ba65228073ab79063b34 (osteffen/edk2) + +This reverts commit 07be1d34d95460a238fcd0f6693efb747c28b329, +which causes the firmware to crash early on AARCH64. + +Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2157656 + +There is a potential fix upstream: +https://github.com/tianocore/edk2/pull/3878/commits + +We need to reevaluate on the next rebase if the fix works and if we can +drop this revert-comment. + +Signed-off-by: Oliver Steffen +--- + ArmVirtPkg/ArmVirtQemu.dsc | 17 +++-------------- + ArmVirtPkg/ArmVirtQemu.fdf | 2 +- + 2 files changed, 4 insertions(+), 15 deletions(-) + +diff --git a/ArmVirtPkg/ArmVirtQemu.dsc b/ArmVirtPkg/ArmVirtQemu.dsc +index 76389e6bd4..3bf51b09aa 100644 +--- a/ArmVirtPkg/ArmVirtQemu.dsc ++++ b/ArmVirtPkg/ArmVirtQemu.dsc +@@ -64,6 +64,8 @@ + QemuFwCfgSimpleParserLib|OvmfPkg/Library/QemuFwCfgSimpleParserLib/QemuFwCfgSimpleParserLib.inf + QemuLoadImageLib|OvmfPkg/Library/GenericQemuLoadImageLib/GenericQemuLoadImageLib.inf + ++ ArmPlatformLib|ArmPlatformPkg/Library/ArmPlatformLibNull/ArmPlatformLibNull.inf ++ + TimerLib|ArmPkg/Library/ArmArchTimerLib/ArmArchTimerLib.inf + VirtNorFlashPlatformLib|ArmVirtPkg/Library/NorFlashQemuLib/NorFlashQemuLib.inf + +@@ -91,12 +93,6 @@ + TpmPlatformHierarchyLib|SecurityPkg/Library/PeiDxeTpmPlatformHierarchyLibNull/PeiDxeTpmPlatformHierarchyLib.inf + !endif + +-[LibraryClasses.AARCH64] +- ArmPlatformLib|ArmVirtPkg/Library/ArmPlatformLibQemu/ArmPlatformLibQemu.inf +- +-[LibraryClasses.ARM] +- ArmPlatformLib|ArmPlatformPkg/Library/ArmPlatformLibNull/ArmPlatformLibNull.inf +- + [LibraryClasses.common.PEIM] + ArmVirtMemInfoLib|ArmVirtPkg/Library/QemuVirtMemInfoLib/QemuVirtMemInfoPeiLib.inf + +@@ -117,8 +113,6 @@ + UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf + + [BuildOptions] +- GCC:*_*_AARCH64_CC_XIPFLAGS == +- + !include NetworkPkg/NetworkBuildOptions.dsc.inc + + ################################################################################ +@@ -330,12 +324,7 @@ + ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf + MdeModulePkg/Core/Pei/PeiMain.inf + ArmPlatformPkg/PlatformPei/PlatformPeim.inf +- ArmVirtPkg/MemoryInitPei/MemoryInitPeim.inf { +- +-!if $(ARCH) == AARCH64 +- ArmMmuLib|ArmPkg/Library/ArmMmuLib/ArmMmuPeiLib.inf +-!endif +- } ++ ArmPlatformPkg/MemoryInitPei/MemoryInitPeim.inf + ArmPkg/Drivers/CpuPei/CpuPei.inf + + !if $(TPM2_ENABLE) == TRUE +diff --git a/ArmVirtPkg/ArmVirtQemu.fdf b/ArmVirtPkg/ArmVirtQemu.fdf +index 764f652afd..c61ed36d89 100644 +--- a/ArmVirtPkg/ArmVirtQemu.fdf ++++ b/ArmVirtPkg/ArmVirtQemu.fdf +@@ -107,7 +107,7 @@ READ_LOCK_STATUS = TRUE + INF ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf + INF MdeModulePkg/Core/Pei/PeiMain.inf + INF ArmPlatformPkg/PlatformPei/PlatformPeim.inf +- INF ArmVirtPkg/MemoryInitPei/MemoryInitPeim.inf ++ INF ArmPlatformPkg/MemoryInitPei/MemoryInitPeim.inf + INF ArmPkg/Drivers/CpuPei/CpuPei.inf + INF MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf + +-- +2.31.1 + diff --git a/edk2.spec b/edk2.spec index 8d768a2..304d435 100644 --- a/edk2.spec +++ b/edk2.spec @@ -16,7 +16,7 @@ ExclusiveArch: x86_64 aarch64 Name: edk2 Version: %{GITDATE}git%{GITCOMMIT} -Release: 4%{?dist} +Release: 5%{?dist} Summary: UEFI firmware for 64-bit virtual machines License: BSD-2-Clause-Patent and OpenSSL and MIT URL: http://www.tianocore.org @@ -77,6 +77,8 @@ Patch34: edk2-OvmfPkg-VirtNorFlashDxe-map-flash-memory-as-uncachea.patch Patch35: edk2-MdePkg-Remove-Itanium-leftover-data-structure-RH-onl.patch # For bz#2158173 - [aarch64][numa] Failed to create 2 numa nodes in some hardwares Patch36: edk2-ArmVirt-don-t-use-unaligned-CopyMem-on-NOR-flash.patch +# For bz#2157656 - [edk2] [aarch64] Unable to initialize EFI firmware when using edk2-aarch64-20221207gitfff6d81270b5-1.el9 in some hardwares +Patch37: edk2-Revert-ArmVirtPkg-ArmVirtQemu-enable-initial-ID-map-.patch # python3-devel and libuuid-devel are required for building tools. @@ -381,6 +383,11 @@ install -m 0644 \ %changelog +* Mon Feb 06 2023 Miroslav Rezanina - 20221207gitfff6d81270b5-5 +- edk2-Revert-ArmVirtPkg-ArmVirtQemu-enable-initial-ID-map-.patch [bz#2157656] +- Resolves: bz#2157656 + ([edk2] [aarch64] Unable to initialize EFI firmware when using edk2-aarch64-20221207gitfff6d81270b5-1.el9 in some hardwares) + * Wed Jan 18 2023 Miroslav Rezanina - 20221207gitfff6d81270b5-4 - edk2-ArmVirt-don-t-use-unaligned-CopyMem-on-NOR-flash.patch [bz#2158173] - Resolves: bz#2158173