Skip to content

Commit e5978b0

Browse files
committed
Update ARM/AARCH64 Platforms to Use New ArmMmuLib Instances
edk2 PR tianocore/edk2#6286 is updating ArmMmuLib instances to a SEC, PEI, and BASE version to support pre-allocating page table memory. This commit makes the necessary changes in edk2-platforms to resolve the breaking change. Continuous-integration-options: PatchCheck.ignore-multi-package Signed-off-by: Oliver Smith-Denny <osde@linux.microsoft.com>
1 parent 67e5007 commit e5978b0

File tree

21 files changed

+79
-4
lines changed

21 files changed

+79
-4
lines changed

Platform/AMD/OverdriveBoard/OverdriveBoard.dsc

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -161,6 +161,7 @@ DEFINE X64EMU_ENABLE = FALSE
161161
OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf
162162

163163
[LibraryClasses.common.SEC]
164+
ArmMmuLib|ArmPkg/Library/ArmMmuLib/ArmMmuSecLib.inf
164165
HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
165166
PeiServicesTablePointerLib|ArmPkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf
166167
MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
@@ -179,6 +180,9 @@ DEFINE X64EMU_ENABLE = FALSE
179180
MemoryInitPeiLib|Silicon/AMD/Styx/Library/MemoryInitPei/MemoryInitPeiLib.inf
180181
BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
181182

183+
[LibraryClasses.common.PEI_CORE, LibraryClasses.common.PEIM]
184+
ArmMmuLib|ArmPkg/Library/ArmMmuLib/ArmMmuPeiLib.inf
185+
182186
[LibraryClasses.common.PEI_CORE]
183187
BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
184188
PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf

Platform/ARM/JunoPkg/ArmJuno.dsc

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,7 @@
6868
!endif
6969

7070
[LibraryClasses.common.SEC]
71+
ArmMmuLib|ArmPkg/Library/ArmMmuLib/ArmMmuSecLib.inf
7172
PrePiLib|EmbeddedPkg/Library/PrePiLib/PrePiLib.inf
7273
ExtractGuidedSectionLib|EmbeddedPkg/Library/PrePiExtractGuidedSectionLib/PrePiExtractGuidedSectionLib.inf
7374
MemoryAllocationLib|EmbeddedPkg/Library/PrePiMemoryAllocationLib/PrePiMemoryAllocationLib.inf
@@ -79,6 +80,9 @@
7980
[LibraryClasses.common.SEC, LibraryClasses.common.PEIM]
8081
MemoryInitPeiLib|ArmPlatformPkg/MemoryInitPei/MemoryInitPeiLib.inf
8182

83+
[LibraryClasses.common.PEI_CORE, LibraryClasses.common.PEIM]
84+
ArmMmuLib|ArmPkg/Library/ArmMmuLib/ArmMmuPeiLib.inf
85+
8286
[LibraryClasses.common.UEFI_DRIVER, LibraryClasses.common.UEFI_APPLICATION, LibraryClasses.common.DXE_RUNTIME_DRIVER, LibraryClasses.common.DXE_DRIVER]
8387
PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
8488
NonDiscoverableDeviceRegistrationLib|MdeModulePkg/Library/NonDiscoverableDeviceRegistrationLib/NonDiscoverableDeviceRegistrationLib.inf

Platform/ARM/Morello/MorelloPlatform.dsc.inc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
FileExplorerLib|MdeModulePkg/Library/FileExplorerLib/FileExplorerLib.inf
2020

2121
[LibraryClasses.common.SEC]
22+
ArmMmuLib|ArmPkg/Library/ArmMmuLib/ArmMmuSecLib.inf
2223
HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
2324
MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
2425
PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
@@ -29,6 +30,7 @@
2930
NULL|MdePkg/Library/StackCheckLibNull/StackCheckLibNull.inf
3031

3132
[LibraryClasses.common.PEI_CORE, LibraryClasses.common.PEIM]
33+
ArmMmuLib|ArmPkg/Library/ArmMmuLib/ArmMmuPeiLib.inf
3234
BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
3335
HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
3436
MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

Platform/ARM/N1Sdp/N1SdpPlatform.dsc

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@
44
# This provides platform specific component descriptions and libraries that
55
# conform to EFI/Framework standards.
66
#
7-
# Copyright (c) 2018 - 2024, ARM Limited. All rights reserved.<BR>
7+
# Copyright (c) 2018 - 2024, ARM Limited. All rights reserved.<BR>
8+
89
#
910
# SPDX-License-Identifier: BSD-2-Clause-Patent
1011
#
@@ -45,13 +46,15 @@
4546
FileExplorerLib|MdeModulePkg/Library/FileExplorerLib/FileExplorerLib.inf
4647

4748
[LibraryClasses.common.SEC]
49+
ArmMmuLib|ArmPkg/Library/ArmMmuLib/ArmMmuSecLib.inf
4850
HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
4951
MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
5052
PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
5153
PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
5254
PeiServicesTablePointerLib|ArmPkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf
5355

5456
[LibraryClasses.common.PEI_CORE, LibraryClasses.common.PEIM]
57+
ArmMmuLib|ArmPkg/Library/ArmMmuLib/ArmMmuPeiLib.inf
5558
BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
5659
HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
5760
MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
@@ -134,9 +137,11 @@
134137
gArmPlatformTokenSpaceGuid.PL011UartInterrupt|95
135138

136139
# PL011 Serial Debug UART (DBG2)
137-
gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase|0x1C0A0000
140+
gArmPlatformTokenSpaceGuid.PcdSerialDbgRegisterBase|0x1C0A0000
141+
138142
gArmPlatformTokenSpaceGuid.PcdSerialDbgUartBaudRate|gEfiMdePkgTokenSpaceGuid.PcdUartDefaultBaudRate
139-
gArmPlatformTokenSpaceGuid.PcdSerialDbgUartClkInHz|24000000
143+
gArmPlatformTokenSpaceGuid.PcdSerialDbgUartClkInHz|24000000
144+
140145

141146
# SBSA Watchdog
142147
gArmTokenSpaceGuid.PcdGenericWatchdogEl2IntrNum|93

Platform/ARM/SgiPkg/SgiPlatform.dsc.inc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@
5151
OrderedCollectionLib|MdePkg/Library/BaseOrderedCollectionRedBlackTreeLib/BaseOrderedCollectionRedBlackTreeLib.inf
5252

5353
[LibraryClasses.common.SEC]
54+
ArmMmuLib|ArmPkg/Library/ArmMmuLib/ArmMmuSecLib.inf
5455
HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
5556
MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
5657
PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
@@ -61,6 +62,7 @@
6162
NULL|MdePkg/Library/StackCheckLibNull/StackCheckLibNull.inf
6263

6364
[LibraryClasses.common.PEI_CORE, LibraryClasses.common.PEIM]
65+
ArmMmuLib|ArmPkg/Library/ArmMmuLib/ArmMmuPeiLib.inf
6466
BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
6567
HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
6668
MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf

Platform/ARM/VExpressPkg/ArmVExpress-FVP-AArch64.dsc

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,12 @@
6868

6969
DtPlatformDtbLoaderLib|Platform/ARM/VExpressPkg/Library/ArmVExpressDtPlatformDtbLoaderLib/ArmVExpressDtPlatformDtbLoaderLib.inf
7070

71+
[LibraryClasses.common.SEC]
72+
ArmMmuLib|ArmPkg/Library/ArmMmuLib/ArmMmuSecLib.inf
73+
74+
[LibraryClasses.common.PEI_CORE, LibraryClasses.common.PEIM]
75+
ArmMmuLib|ArmPkg/Library/ArmMmuLib/ArmMmuPeiLib.inf
76+
7177
[LibraryClasses.common.DXE_RUNTIME_DRIVER]
7278
ArmPlatformSysConfigLib|Platform/ARM/VExpressPkg/Library/ArmVExpressSysConfigRuntimeLib/ArmVExpressSysConfigRuntimeLib.inf
7379

Platform/BeagleBoard/BeagleBoardPkg/BeagleBoardPkg.dsc

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,7 @@
143143
UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf
144144

145145
[LibraryClasses.common.SEC]
146+
ArmMmuLib|ArmPkg/Library/ArmMmuLib/ArmMmuSecLib.inf
146147
PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
147148
ExtractGuidedSectionLib|EmbeddedPkg/Library/PrePiExtractGuidedSectionLib/PrePiExtractGuidedSectionLib.inf
148149

@@ -161,6 +162,9 @@
161162
# ARM platforms have SEC modules with standard entry points, so we can generically link StackCheckLib
162163
NULL|MdePkg/Library/StackCheckLibNull/StackCheckLibNull.inf
163164

165+
[LibraryClasses.common.PEI_CORE, LibraryClasses.common.PEIM]
166+
ArmMmuLib|ArmPkg/Library/ArmMmuLib/ArmMmuPeiLib.inf
167+
164168
[LibraryClasses.common.PEI_CORE]
165169
PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
166170

Platform/LeMaker/CelloBoard/CelloBoard.dsc

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -151,6 +151,7 @@ DEFINE NUM_CORES = 4
151151
BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
152152

153153
[LibraryClasses.common.SEC]
154+
ArmMmuLib|ArmPkg/Library/ArmMmuLib/ArmMmuSecLib.inf
154155
HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
155156
PeiServicesTablePointerLib|ArmPkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf
156157
MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
@@ -169,6 +170,9 @@ DEFINE NUM_CORES = 4
169170
MemoryInitPeiLib|Silicon/AMD/Styx/Library/MemoryInitPei/MemoryInitPeiLib.inf
170171
BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
171172

173+
[LibraryClasses.common.PEI_CORE, LibraryClasses.common.PEIM]
174+
ArmMmuLib|ArmPkg/Library/ArmMmuLib/ArmMmuPeiLib.inf
175+
172176
[LibraryClasses.common.PEI_CORE]
173177
BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
174178
PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf

Platform/Marvell/OdysseyPkg/OdysseyPkg.dsc

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,9 @@
4343
UefiUsbLib|MdePkg/Library/UefiUsbLib/UefiUsbLib.inf # used by UsbKbDxe
4444
RegisterFilterLib|MdePkg/Library/RegisterFilterLibNull/RegisterFilterLibNull.inf
4545

46+
[LibraryClasses.common.SEC]
47+
ArmMmuLib|ArmPkg/Library/ArmMmuLib/ArmMmuSecLib.inf
48+
4649
[LibraryClasses.common.UEFI_DRIVER, LibraryClasses.common.UEFI_APPLICATION, LibraryClasses.common.DXE_RUNTIME_DRIVER, LibraryClasses.common.DXE_DRIVER]
4750
PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
4851
UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf

Platform/Qemu/SbsaQemu/SbsaQemu.dsc

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -189,6 +189,7 @@ DEFINE NETWORK_HTTP_BOOT_ENABLE = FALSE
189189
PL011UartClockLib|ArmPlatformPkg/Library/PL011UartClockLib/PL011UartClockLib.inf
190190

191191
[LibraryClasses.common.SEC]
192+
ArmMmuLib|ArmPkg/Library/ArmMmuLib/ArmMmuSecLib.inf
192193
PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
193194
BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
194195

@@ -201,6 +202,9 @@ DEFINE NETWORK_HTTP_BOOT_ENABLE = FALSE
201202
# ARM platforms have SEC modules with standard entry points, so we can generically link StackCheckLib
202203
NULL|MdePkg/Library/StackCheckLibNull/StackCheckLibNull.inf
203204

205+
[LibraryClasses.common.PEI_CORE, LibraryClasses.common.PEIM]
206+
ArmMmuLib|ArmPkg/Library/ArmMmuLib/ArmMmuPeiLib.inf
207+
204208
[LibraryClasses.common.PEI_CORE]
205209
PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf
206210
BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf

0 commit comments

Comments
 (0)