From c0d9e5c446b7d59ff0f2c9849426898f3e38ef11 Mon Sep 17 00:00:00 2001 From: Oliver Smith-Denny Date: Fri, 10 Apr 2026 13:22:41 -0700 Subject: [PATCH 1/2] Global: Move ArmLib to MdePkg Per https://edk2.groups.io/g/devel/topic/move_armlib_to_baselib/118541649, this commit moves ArmLib to MdePkg and updates all consumers. The only change to ArmLib itself is to remove ArmPkg.dec from the inf. Continuous-integration-options: PatchCheck.ignore-multi-package Signed-off-by: Oliver Smith-Denny --- ArmPkg/ArmPkg.dsc | 3 +-- ArmPlatformPkg/ArmPlatformPkg.dsc | 2 +- ArmVirtPkg/ArmVirtCloudHv.dsc | 2 +- ArmVirtPkg/ArmVirtKvmTool.dsc | 2 +- ArmVirtPkg/ArmVirtQemu.dsc | 2 +- ArmVirtPkg/ArmVirtQemuKernel.dsc | 2 +- ArmVirtPkg/ArmVirtXen.dsc | 2 +- CryptoPkg/CryptoPkg.dsc | 2 +- EmbeddedPkg/EmbeddedPkg.dsc | 2 +- .../Library/ArmLib/AArch64/AArch64ArchTimerSupport.S | 0 {ArmPkg => MdePkg}/Library/ArmLib/AArch64/AArch64Lib.c | 0 {ArmPkg => MdePkg}/Library/ArmLib/AArch64/AArch64Lib.h | 0 {ArmPkg => MdePkg}/Library/ArmLib/AArch64/AArch64Support.S | 0 {ArmPkg => MdePkg}/Library/ArmLib/AArch64/ArmLibSupport.S | 0 {ArmPkg => MdePkg}/Library/ArmLib/AArch64/ArmLibSupportV8.S | 0 {ArmPkg => MdePkg}/Library/ArmLib/ArmBaseLib.inf | 1 - {ArmPkg => MdePkg}/Library/ArmLib/ArmLib.c | 0 MdePkg/MdePkg.dsc | 1 + StandaloneMmPkg/StandaloneMmPkg.dsc | 2 +- TcgTpmPkg/TcgTpmPkg.dsc | 2 +- UefiPayloadPkg/UefiPayloadPkg.dsc | 2 +- 21 files changed, 13 insertions(+), 14 deletions(-) rename {ArmPkg => MdePkg}/Library/ArmLib/AArch64/AArch64ArchTimerSupport.S (100%) rename {ArmPkg => MdePkg}/Library/ArmLib/AArch64/AArch64Lib.c (100%) rename {ArmPkg => MdePkg}/Library/ArmLib/AArch64/AArch64Lib.h (100%) rename {ArmPkg => MdePkg}/Library/ArmLib/AArch64/AArch64Support.S (100%) rename {ArmPkg => MdePkg}/Library/ArmLib/AArch64/ArmLibSupport.S (100%) rename {ArmPkg => MdePkg}/Library/ArmLib/AArch64/ArmLibSupportV8.S (100%) rename {ArmPkg => MdePkg}/Library/ArmLib/ArmBaseLib.inf (93%) rename {ArmPkg => MdePkg}/Library/ArmLib/ArmLib.c (100%) diff --git a/ArmPkg/ArmPkg.dsc b/ArmPkg/ArmPkg.dsc index 7374f877a05e..39260574a724 100644 --- a/ArmPkg/ArmPkg.dsc +++ b/ArmPkg/ArmPkg.dsc @@ -82,7 +82,7 @@ IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf - ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf + ArmLib|MdePkg/Library/ArmLib/ArmBaseLib.inf ArmMmuLib|UefiCpuPkg/Library/ArmMmuLib/ArmMmuBaseLib.inf ArmTransferListLib|ArmPkg/Library/ArmTransferListLib/ArmTransferListLib.inf ArmFfaLib|MdeModulePkg/Library/ArmFfaLib/ArmFfaDxeLib.inf @@ -140,7 +140,6 @@ ArmPkg/Drivers/ArmPciCpuIo2Dxe/ArmPciCpuIo2Dxe.inf ArmPkg/Library/ArmArchTimerLib/ArmArchTimerLib.inf - ArmPkg/Library/ArmLib/ArmBaseLib.inf ArmPkg/Library/ArmMtlLibNull/ArmMtlLibNull.inf ArmPkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf ArmPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf diff --git a/ArmPlatformPkg/ArmPlatformPkg.dsc b/ArmPlatformPkg/ArmPlatformPkg.dsc index 370cb9aa9414..eaa6523919fa 100644 --- a/ArmPlatformPkg/ArmPlatformPkg.dsc +++ b/ArmPlatformPkg/ArmPlatformPkg.dsc @@ -36,7 +36,7 @@ !include MdePkg/MdeLibs.dsc.inc [LibraryClasses.common] - ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf + ArmLib|MdePkg/Library/ArmLib/ArmBaseLib.inf ArmPlatformLib|ArmPlatformPkg/Library/ArmPlatformLibNull/ArmPlatformLibNull.inf ArmMmuLib|UefiCpuPkg/Library/ArmMmuLib/ArmMmuBaseLib.inf ArmSmcLib|MdePkg/Library/ArmSmcLib/ArmSmcLib.inf diff --git a/ArmVirtPkg/ArmVirtCloudHv.dsc b/ArmVirtPkg/ArmVirtCloudHv.dsc index 2dfd286e2505..c6b497301b40 100644 --- a/ArmVirtPkg/ArmVirtCloudHv.dsc +++ b/ArmVirtPkg/ArmVirtCloudHv.dsc @@ -36,7 +36,7 @@ !include ArmVirtPkg/ArmVirt.dsc.inc [LibraryClasses.common] - ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf + ArmLib|MdePkg/Library/ArmLib/ArmBaseLib.inf ArmMmuLib|UefiCpuPkg/Library/ArmMmuLib/ArmMmuBaseLib.inf # Virtio Support diff --git a/ArmVirtPkg/ArmVirtKvmTool.dsc b/ArmVirtPkg/ArmVirtKvmTool.dsc index 62ee806a0994..598f804dc263 100644 --- a/ArmVirtPkg/ArmVirtKvmTool.dsc +++ b/ArmVirtPkg/ArmVirtKvmTool.dsc @@ -41,7 +41,7 @@ !include ArmVirtPkg/ArmVirt.dsc.inc [LibraryClasses.common] - ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf + ArmLib|MdePkg/Library/ArmLib/ArmBaseLib.inf ArmMmuLib|UefiCpuPkg/Library/ArmMmuLib/ArmMmuBaseLib.inf # Virtio Support diff --git a/ArmVirtPkg/ArmVirtQemu.dsc b/ArmVirtPkg/ArmVirtQemu.dsc index 00167cfa672c..d7aace51b304 100644 --- a/ArmVirtPkg/ArmVirtQemu.dsc +++ b/ArmVirtPkg/ArmVirtQemu.dsc @@ -58,7 +58,7 @@ !include ArmVirtPkg/ArmVirt.dsc.inc [LibraryClasses.common] - ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf + ArmLib|MdePkg/Library/ArmLib/ArmBaseLib.inf ArmMmuLib|UefiCpuPkg/Library/ArmMmuLib/ArmMmuBaseLib.inf ArmTransferListLib|ArmPkg/Library/ArmTransferListLib/ArmTransferListLib.inf diff --git a/ArmVirtPkg/ArmVirtQemuKernel.dsc b/ArmVirtPkg/ArmVirtQemuKernel.dsc index d257ca45c51c..147daa23e6a4 100644 --- a/ArmVirtPkg/ArmVirtQemuKernel.dsc +++ b/ArmVirtPkg/ArmVirtQemuKernel.dsc @@ -54,7 +54,7 @@ !include ArmVirtPkg/ArmVirt.dsc.inc [LibraryClasses.common] - ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf + ArmLib|MdePkg/Library/ArmLib/ArmBaseLib.inf ArmMmuLib|UefiCpuPkg/Library/ArmMmuLib/ArmMmuBaseLib.inf # Virtio Support diff --git a/ArmVirtPkg/ArmVirtXen.dsc b/ArmVirtPkg/ArmVirtXen.dsc index 2ec264a15e90..f60fa5e8bb9c 100644 --- a/ArmVirtPkg/ArmVirtXen.dsc +++ b/ArmVirtPkg/ArmVirtXen.dsc @@ -41,7 +41,7 @@ XenHypercallLib|OvmfPkg/Library/XenHypercallLib/XenHypercallLib.inf ArmGenericTimerCounterLib|ArmVirtPkg/Library/XenArmGenericTimerVirtCounterLib/XenArmGenericTimerVirtCounterLib.inf - ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf + ArmLib|MdePkg/Library/ArmLib/ArmBaseLib.inf ArmMmuLib|UefiCpuPkg/Library/ArmMmuLib/ArmMmuBaseLib.inf # Virtio Support diff --git a/CryptoPkg/CryptoPkg.dsc b/CryptoPkg/CryptoPkg.dsc index bf0167dcdbaa..9bc7421f653b 100644 --- a/CryptoPkg/CryptoPkg.dsc +++ b/CryptoPkg/CryptoPkg.dsc @@ -123,7 +123,7 @@ RngLib|MdePkg/Library/BaseRngLib/BaseRngLib.inf [LibraryClasses.AARCH64] - ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf + ArmLib|MdePkg/Library/ArmLib/ArmBaseLib.inf [LibraryClasses.common.SEC] BaseCryptLib|CryptoPkg/Library/BaseCryptLib/SecCryptLib.inf diff --git a/EmbeddedPkg/EmbeddedPkg.dsc b/EmbeddedPkg/EmbeddedPkg.dsc index 688464b86332..dbf2ca9956da 100644 --- a/EmbeddedPkg/EmbeddedPkg.dsc +++ b/EmbeddedPkg/EmbeddedPkg.dsc @@ -127,7 +127,7 @@ ArmSmcLib|MdePkg/Library/ArmSmcLib/ArmSmcLib.inf SemihostLib|ArmPkg/Library/SemihostLib/SemihostLib.inf - ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf + ArmLib|MdePkg/Library/ArmLib/ArmBaseLib.inf ################################################################################ # diff --git a/ArmPkg/Library/ArmLib/AArch64/AArch64ArchTimerSupport.S b/MdePkg/Library/ArmLib/AArch64/AArch64ArchTimerSupport.S similarity index 100% rename from ArmPkg/Library/ArmLib/AArch64/AArch64ArchTimerSupport.S rename to MdePkg/Library/ArmLib/AArch64/AArch64ArchTimerSupport.S diff --git a/ArmPkg/Library/ArmLib/AArch64/AArch64Lib.c b/MdePkg/Library/ArmLib/AArch64/AArch64Lib.c similarity index 100% rename from ArmPkg/Library/ArmLib/AArch64/AArch64Lib.c rename to MdePkg/Library/ArmLib/AArch64/AArch64Lib.c diff --git a/ArmPkg/Library/ArmLib/AArch64/AArch64Lib.h b/MdePkg/Library/ArmLib/AArch64/AArch64Lib.h similarity index 100% rename from ArmPkg/Library/ArmLib/AArch64/AArch64Lib.h rename to MdePkg/Library/ArmLib/AArch64/AArch64Lib.h diff --git a/ArmPkg/Library/ArmLib/AArch64/AArch64Support.S b/MdePkg/Library/ArmLib/AArch64/AArch64Support.S similarity index 100% rename from ArmPkg/Library/ArmLib/AArch64/AArch64Support.S rename to MdePkg/Library/ArmLib/AArch64/AArch64Support.S diff --git a/ArmPkg/Library/ArmLib/AArch64/ArmLibSupport.S b/MdePkg/Library/ArmLib/AArch64/ArmLibSupport.S similarity index 100% rename from ArmPkg/Library/ArmLib/AArch64/ArmLibSupport.S rename to MdePkg/Library/ArmLib/AArch64/ArmLibSupport.S diff --git a/ArmPkg/Library/ArmLib/AArch64/ArmLibSupportV8.S b/MdePkg/Library/ArmLib/AArch64/ArmLibSupportV8.S similarity index 100% rename from ArmPkg/Library/ArmLib/AArch64/ArmLibSupportV8.S rename to MdePkg/Library/ArmLib/AArch64/ArmLibSupportV8.S diff --git a/ArmPkg/Library/ArmLib/ArmBaseLib.inf b/MdePkg/Library/ArmLib/ArmBaseLib.inf similarity index 93% rename from ArmPkg/Library/ArmLib/ArmBaseLib.inf rename to MdePkg/Library/ArmLib/ArmBaseLib.inf index 6b818befb256..431182a5cd34 100644 --- a/ArmPkg/Library/ArmLib/ArmBaseLib.inf +++ b/MdePkg/Library/ArmLib/ArmBaseLib.inf @@ -33,5 +33,4 @@ DebugLib [Packages] - ArmPkg/ArmPkg.dec MdePkg/MdePkg.dec diff --git a/ArmPkg/Library/ArmLib/ArmLib.c b/MdePkg/Library/ArmLib/ArmLib.c similarity index 100% rename from ArmPkg/Library/ArmLib/ArmLib.c rename to MdePkg/Library/ArmLib/ArmLib.c diff --git a/MdePkg/MdePkg.dsc b/MdePkg/MdePkg.dsc index abe999c234a5..4e9d32d16814 100644 --- a/MdePkg/MdePkg.dsc +++ b/MdePkg/MdePkg.dsc @@ -208,6 +208,7 @@ MdePkg/Library/ArmSmcLibNull/ArmSmcLibNull.inf MdePkg/Library/ArmSvcLib/ArmSvcLib.inf MdePkg/Library/ArmFfaMemMgmtLib/ArmFfaMemMgmtLib.inf + MdePkg/Library/ArmLib/ArmBaseLib.inf [Components.RISCV64] MdePkg/Library/BaseRiscVSbiLib/BaseRiscVSbiLib.inf diff --git a/StandaloneMmPkg/StandaloneMmPkg.dsc b/StandaloneMmPkg/StandaloneMmPkg.dsc index b71d59e3e308..e3327bc94029 100644 --- a/StandaloneMmPkg/StandaloneMmPkg.dsc +++ b/StandaloneMmPkg/StandaloneMmPkg.dsc @@ -74,7 +74,7 @@ StandaloneMmCoreEntryPoint|MdePkg/Library/StandaloneMmCoreEntryPoint/StandaloneMmCoreEntryPoint.inf [LibraryClasses.AARCH64] - ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf + ArmLib|MdePkg/Library/ArmLib/ArmBaseLib.inf StandaloneMmCoreEntryPoint|ArmPkg/Library/ArmStandaloneMmCoreEntryPoint/ArmStandaloneMmCoreEntryPoint.inf StandaloneMmMmuLib|ArmPkg/Library/StandaloneMmMmuLib/ArmMmuStandaloneMmLib.inf ArmSmcLib|MdePkg/Library/ArmSmcLib/ArmSmcLib.inf diff --git a/TcgTpmPkg/TcgTpmPkg.dsc b/TcgTpmPkg/TcgTpmPkg.dsc index 76a715ecc917..d77fb9549dac 100644 --- a/TcgTpmPkg/TcgTpmPkg.dsc +++ b/TcgTpmPkg/TcgTpmPkg.dsc @@ -46,7 +46,7 @@ IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf [LibraryClasses.AARCH64] - ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf + ArmLib|MdePkg/Library/ArmLib/ArmBaseLib.inf [LibraryClasses.common.SEC] BaseCryptLib|CryptoPkg/Library/BaseCryptLib/SecCryptLib.inf diff --git a/UefiPayloadPkg/UefiPayloadPkg.dsc b/UefiPayloadPkg/UefiPayloadPkg.dsc index 0b2025b4d280..3faed2ac19fa 100644 --- a/UefiPayloadPkg/UefiPayloadPkg.dsc +++ b/UefiPayloadPkg/UefiPayloadPkg.dsc @@ -422,7 +422,7 @@ [LibraryClasses.AARCH64] ArmHvcLib|ArmPkg/Library/ArmHvcLib/ArmHvcLib.inf - ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf + ArmLib|MdePkg/Library/ArmLib/ArmBaseLib.inf ArmMmuLib|UefiCpuPkg/Library/ArmMmuLib/ArmMmuBaseLib.inf ArmSmcLib|MdePkg/Library/ArmSmcLib/ArmSmcLib.inf From 648414007b5421240d8a5a4210079d61c3125a53 Mon Sep 17 00:00:00 2001 From: Oliver Smith-Denny Date: Fri, 10 Apr 2026 13:29:16 -0700 Subject: [PATCH 2/2] MdePkg: ArmLib: Drop DebugLib Dependency ArmLib doesn't actually depend on DebugLib and is used in places where having additional dependencies would be incorrect. Drop it. Signed-off-by: Oliver Smith-Denny --- MdePkg/Library/ArmLib/AArch64/AArch64Lib.c | 1 - MdePkg/Library/ArmLib/ArmBaseLib.inf | 3 --- 2 files changed, 4 deletions(-) diff --git a/MdePkg/Library/ArmLib/AArch64/AArch64Lib.c b/MdePkg/Library/ArmLib/AArch64/AArch64Lib.c index 402633578977..53ea3966a14e 100644 --- a/MdePkg/Library/ArmLib/AArch64/AArch64Lib.c +++ b/MdePkg/Library/ArmLib/AArch64/AArch64Lib.c @@ -11,7 +11,6 @@ #include #include -#include #include diff --git a/MdePkg/Library/ArmLib/ArmBaseLib.inf b/MdePkg/Library/ArmLib/ArmBaseLib.inf index 431182a5cd34..0287ab5581ab 100644 --- a/MdePkg/Library/ArmLib/ArmBaseLib.inf +++ b/MdePkg/Library/ArmLib/ArmBaseLib.inf @@ -29,8 +29,5 @@ AArch64/AArch64Support.S AArch64/AArch64ArchTimerSupport.S -[LibraryClasses] - DebugLib - [Packages] MdePkg/MdePkg.dec