2 # Copyright (c) 2011-2015, ARM Limited. All rights reserved.
4 # This program and the accompanying materials
5 # are licensed and made available under the terms and conditions of the BSD License
6 # which accompanies this distribution. The full text of the license may be found at
7 # http://opensource.org/licenses/bsd-license.php
9 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
13 ################################################################################
15 # Defines Section - statements that will be processed to create a Makefile.
17 ################################################################################
19 PLATFORM_NAME = ArmPlatform
20 PLATFORM_GUID = 4fe82b83-9315-4ff3-8cc0-ab77ca93cb7f
21 PLATFORM_VERSION = 0.1
22 DSC_SPECIFICATION = 0x00010005
23 OUTPUT_DIRECTORY = Build/$(PLATFORM_NAME)
24 SUPPORTED_ARCHITECTURES = ARM|AARCH64
25 BUILD_TARGETS = DEBUG|RELEASE
26 SKUID_IDENTIFIER = DEFAULT
27 FLASH_DEFINITION = ArmPlatformPkg/ArmPlatformPkg.fdf
29 [LibraryClasses.common]
30 ArmPlatformLib|ArmPlatformPkg/Library/ArmPlatformLibNull/ArmPlatformLibNull.inf
32 !if $(TARGET) == RELEASE
33 DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
34 UncachedMemoryAllocationLib|ArmPkg/Library/UncachedMemoryAllocationLib/UncachedMemoryAllocationLib.inf
36 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
37 UncachedMemoryAllocationLib|ArmPkg/Library/UncachedMemoryAllocationLib/UncachedMemoryAllocationLib.inf
38 # UncachedMemoryAllocationLib|ArmPkg/Library/DebugUncachedMemoryAllocationLib/DebugUncachedMemoryAllocationLib.inf
40 DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
42 BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
43 SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf
44 PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
45 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
46 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
47 PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
48 IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
49 UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf
50 CpuLib|MdePkg/Library/BaseCpuLib/BaseCpuLib.inf
52 UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
53 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
54 UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
55 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
56 UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
57 DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
58 UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
59 UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
60 HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
61 UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf
63 UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf
66 # Assume everything is fixed at build
68 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
70 # 1/123 faster than Stm or Vstm version
71 #BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
72 BaseMemoryLib|ArmPkg/Library/BaseMemoryLibStm/BaseMemoryLibStm.inf
74 # ARM Architectural Libraries
75 CacheMaintenanceLib|ArmPkg/Library/ArmCacheMaintenanceLib/ArmCacheMaintenanceLib.inf
76 DefaultExceptionHandlerLib|ArmPkg/Library/DefaultExceptionHandlerLib/DefaultExceptionHandlerLib.inf
77 CpuExceptionHandlerLib|MdeModulePkg/Library/CpuExceptionHandlerLibNull/CpuExceptionHandlerLibNull.inf
78 ArmDisassemblerLib|ArmPkg/Library/ArmDisassemblerLib/ArmDisassemblerLib.inf
79 DmaLib|ArmPkg/Library/ArmDmaLib/ArmDmaLib.inf
80 ArmGicLib|ArmPkg/Drivers/ArmGic/ArmGicLib.inf
81 ArmSmcLib|ArmPkg/Library/ArmSmcLib/ArmSmcLib.inf
83 SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
84 TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf
85 EfiResetSystemLib|EmbeddedPkg/Library/TemplateResetSystemLib/TemplateResetSystemLib.inf
86 RealTimeClockLib|EmbeddedPkg/Library/TemplateRealTimeClockLib/TemplateRealTimeClockLib.inf
88 # Networking Requirements for ArmPlatformPkg/Bds
89 NetLib|MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf
91 # EBL Related Libraries
92 EblCmdLib|ArmPlatformPkg/Library/EblCmdLib/EblCmdLib.inf
93 EfiFileLib|EmbeddedPkg/Library/EfiFileLib/EfiFileLib.inf
94 EblAddExternalCommandLib|EmbeddedPkg/Library/EblAddExternalCommandLib/EblAddExternalCommandLib.inf
95 EblNetworkLib|EmbeddedPkg/Library/EblNetworkLib/EblNetworkLib.inf
98 # Uncomment (and comment out the next line) For RealView Debugger. The Standard IO window
99 # in the debugger will show load and unload commands for symbols. You can cut and paste this
100 # into the command window to load symbols. We should be able to use a script to do this, but
101 # the version of RVD I have does not support scripts accessing system memory.
103 #PeCoffExtraActionLib|ArmPkg/Library/RvdPeCoffExtraActionLib/RvdPeCoffExtraActionLib.inf
104 PeCoffExtraActionLib|ArmPkg/Library/DebugPeCoffExtraActionLib/DebugPeCoffExtraActionLib.inf
105 #PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf
107 DebugAgentLib|MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf
108 DebugAgentTimerLib|EmbeddedPkg/Library/DebugAgentTimerLibNull/DebugAgentTimerLibNull.inf
110 SemihostLib|ArmPkg/Library/SemihostLib/SemihostLib.inf
113 BdsLib|ArmPkg/Library/BdsLib/BdsLib.inf
114 FdtLib|EmbeddedPkg/Library/FdtLib/FdtLib.inf
117 ArmLib|ArmPkg/Library/ArmLib/ArmV7/ArmV7Lib.inf
118 ArmCpuLib|ArmPkg/Drivers/ArmCpuLib/ArmCortexA9Lib/ArmCortexA9Lib.inf
120 [LibraryClasses.AARCH64]
121 ArmLib|ArmPkg/Library/ArmLib/AArch64/AArch64Lib.inf
122 ArmCpuLib|ArmPkg/Drivers/ArmCpuLib/ArmCortexAEMv8Lib/ArmCortexAEMv8Lib.inf
123 ArmGenericTimerCounterLib|ArmPkg/Library/ArmGenericTimerPhyCounterLib/ArmGenericTimerPhyCounterLib.inf
125 [LibraryClasses.common.SEC]
126 ArmPlatformSecLib|ArmPlatformPkg/Library/ArmPlatformSecLibNull/ArmPlatformLibNullSec.inf
127 ArmPlatformLib|ArmPlatformPkg/Library/ArmPlatformLibNull/ArmPlatformLibNullSec.inf
128 ArmTrustedMonitorLib|ArmPlatformPkg/Library/ArmTrustedMonitorLibNull/ArmTrustedMonitorLibNull.inf
130 ArmPlatformSecExtraActionLib|ArmPlatformPkg/Library/DebugSecExtraActionLib/DebugSecExtraActionLib.inf
131 ArmPlatformGlobalVariableLib|ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Sec/SecArmPlatformGlobalVariableLib.inf
133 DebugAgentLib|ArmPkg/Library/DebugAgentSymbolsBaseLib/DebugAgentSymbolsBaseLib.inf
134 DefaultExceptionHandlerLib|ArmPkg/Library/DefaultExceptionHandlerLib/DefaultExceptionHandlerLibBase.inf
136 [LibraryClasses.common.SEC, LibraryClasses.common.PEIM]
137 MemoryInitPeiLib|ArmPlatformPkg/MemoryInitPei/MemoryInitPeiLib.inf
139 [LibraryClasses.ARM.SEC]
140 ArmLib|ArmPkg/Library/ArmLib/ArmV7/ArmV7LibSec.inf
142 [LibraryClasses.AARCH64.SEC]
143 ArmLib|ArmPkg/Library/ArmLib/AArch64/AArch64LibSec.inf
145 [LibraryClasses.common.PEI_CORE]
146 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
147 PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
148 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
149 PeiCoreEntryPoint|MdePkg/Library/PeiCoreEntryPoint/PeiCoreEntryPoint.inf
150 PerformanceLib|MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib.inf
151 ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf
152 OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf
153 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
154 UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf
155 ExtractGuidedSectionLib|MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.inf
157 ArmPlatformGlobalVariableLib|ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Pei/PeiArmPlatformGlobalVariableLib.inf
158 PeiServicesTablePointerLib|ArmPlatformPkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf
160 [LibraryClasses.common.PEIM]
161 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
162 PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
163 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
164 PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf
165 PerformanceLib|MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib.inf
166 ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf
167 OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf
168 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
169 PeiResourcePublicationLib|MdePkg/Library/PeiResourcePublicationLib/PeiResourcePublicationLib.inf
170 UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf
171 ExtractGuidedSectionLib|MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.inf
173 ArmPlatformGlobalVariableLib|ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Pei/PeiArmPlatformGlobalVariableLib.inf
174 PeiServicesTablePointerLib|ArmPlatformPkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf
175 PlatformPeiLib|ArmPlatformPkg/PlatformPei/PlatformPeiLib.inf
177 [LibraryClasses.common.DXE_CORE]
178 HobLib|MdePkg/Library/DxeCoreHobLib/DxeCoreHobLib.inf
179 MemoryAllocationLib|MdeModulePkg/Library/DxeCoreMemoryAllocationLib/DxeCoreMemoryAllocationLib.inf
180 DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf
181 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
182 ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf
183 UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf
184 DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
185 PerformanceLib|MdeModulePkg/Library/DxeCorePerformanceLib/DxeCorePerformanceLib.inf
187 [LibraryClasses.common.DXE_DRIVER]
188 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
189 DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
190 SecurityManagementLib|MdeModulePkg/Library/DxeSecurityManagementLib/DxeSecurityManagementLib.inf
191 PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf
192 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
193 ArmPlatformGlobalVariableLib|ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Dxe/DxeArmPlatformGlobalVariableLib.inf
195 [LibraryClasses.common.UEFI_APPLICATION]
196 UefiDecompressLib|IntelFrameworkModulePkg/Library/BaseUefiTianoCustomDecompressLib/BaseUefiTianoCustomDecompressLib.inf
197 PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf
198 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
199 HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
201 [LibraryClasses.common.UEFI_DRIVER]
202 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
203 UefiDecompressLib|IntelFrameworkModulePkg/Library/BaseUefiTianoCustomDecompressLib/BaseUefiTianoCustomDecompressLib.inf
204 ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf
205 PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf
206 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
208 [LibraryClasses.common.DXE_RUNTIME_DRIVER]
209 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
210 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
211 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
212 CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf
214 [LibraryClasses.ARM, LibraryClasses.AARCH64]
216 # It is not possible to prevent the ARM compiler for generic intrinsic functions.
217 # This library provides the instrinsic functions generate by a given compiler.
218 # [LibraryClasses.ARM] and NULL mean link this library into all ARM images.
220 NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
222 # Add support for GCC stack protector
223 NULL|MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf
226 XCODE:*_*_ARM_PLATFORM_FLAGS == -arch armv7
228 GCC:*_*_ARM_PLATFORM_FLAGS == -march=armv7-a
230 RVCT:*_*_ARM_PLATFORM_FLAGS == --cpu Cortex-A8
232 ################################################################################
234 # Pcd Section - list of all EDK II PCD Entries defined by this Platform
236 ################################################################################
238 [PcdsFeatureFlag.common]
239 gEfiMdePkgTokenSpaceGuid.PcdComponentNameDisable|TRUE
240 gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnosticsDisable|TRUE
241 gEfiMdePkgTokenSpaceGuid.PcdComponentName2Disable|TRUE
242 gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnostics2Disable|TRUE
245 # Control what commands are supported from the UI
246 # Turn these on and off to add features or save size
248 gEmbeddedTokenSpaceGuid.PcdEmbeddedMacBoot|TRUE
249 gEmbeddedTokenSpaceGuid.PcdEmbeddedDirCmd|TRUE
250 gEmbeddedTokenSpaceGuid.PcdEmbeddedHobCmd|TRUE
251 gEmbeddedTokenSpaceGuid.PcdEmbeddedHwDebugCmd|TRUE
252 gEmbeddedTokenSpaceGuid.PcdEmbeddedPciDebugCmd|TRUE
253 gEmbeddedTokenSpaceGuid.PcdEmbeddedIoEnable|FALSE
254 gEmbeddedTokenSpaceGuid.PcdEmbeddedScriptCmd|FALSE
256 gEmbeddedTokenSpaceGuid.PcdCacheEnable|TRUE
258 # Use the Vector Table location in CpuDxe. We will not copy the Vector Table at PcdCpuVectorBaseAddress
259 gArmTokenSpaceGuid.PcdRelocateVectorTable|FALSE
261 gEmbeddedTokenSpaceGuid.PcdPrePiProduceMemoryTypeInformationHob|TRUE
263 gEfiMdeModulePkgTokenSpaceGuid.PcdTurnOffUsbLegacySupport|TRUE
265 [PcdsFixedAtBuild.common]
266 gArmPlatformTokenSpaceGuid.PcdFirmwareVendor|"ARM Platform"
268 gEmbeddedTokenSpaceGuid.PcdEmbeddedPrompt|"ArmPlatform"
269 gEfiMdePkgTokenSpaceGuid.PcdMaximumUnicodeStringLength|1000000
270 gEfiMdePkgTokenSpaceGuid.PcdMaximumAsciiStringLength|1000000
271 gEfiMdePkgTokenSpaceGuid.PcdMaximumLinkedListLength|1000000
272 gEfiMdePkgTokenSpaceGuid.PcdSpinLockTimeout|10000000
273 gEfiMdePkgTokenSpaceGuid.PcdDebugClearMemoryValue|0xAF
274 gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask|1
275 gEfiMdePkgTokenSpaceGuid.PcdPostCodePropertyMask|0
276 gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|320
278 # DEBUG_ASSERT_ENABLED 0x01
279 # DEBUG_PRINT_ENABLED 0x02
280 # DEBUG_CODE_ENABLED 0x04
281 # CLEAR_MEMORY_ENABLED 0x08
282 # ASSERT_BREAKPOINT_ENABLED 0x10
283 # ASSERT_DEADLOOP_ENABLED 0x20
284 !if $(TARGET) == RELEASE
285 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x21
287 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x2f
290 # DEBUG_INIT 0x00000001 // Initialization
291 # DEBUG_WARN 0x00000002 // Warnings
292 # DEBUG_LOAD 0x00000004 // Load events
293 # DEBUG_FS 0x00000008 // EFI File system
294 # DEBUG_POOL 0x00000010 // Alloc & Free's
295 # DEBUG_PAGE 0x00000020 // Alloc & Free's
296 # DEBUG_INFO 0x00000040 // Verbose
297 # DEBUG_DISPATCH 0x00000080 // PEI/DXE Dispatchers
298 # DEBUG_VARIABLE 0x00000100 // Variable
299 # DEBUG_BM 0x00000400 // Boot Manager
300 # DEBUG_BLKIO 0x00001000 // BlkIo Driver
301 # DEBUG_NET 0x00004000 // SNI Driver
302 # DEBUG_UNDI 0x00010000 // UNDI Driver
303 # DEBUG_LOADFILE 0x00020000 // UNDI Driver
304 # DEBUG_EVENT 0x00080000 // Event messages
305 # DEBUG_ERROR 0x80000000 // Error
306 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x8000000F
308 gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x07
310 gEmbeddedTokenSpaceGuid.PcdEmbeddedAutomaticBootCommand|""
311 gEmbeddedTokenSpaceGuid.PcdEmbeddedDefaultTextColor|0x07
312 gEmbeddedTokenSpaceGuid.PcdEmbeddedMemVariableStoreSize|0x10000
315 # Optional feature to help prevent EFI memory map fragments
316 # Turned on and off via: PcdPrePiProduceMemoryTypeInformationHob
317 # Values are in EFI Pages (4K). DXE Core will make sure that
318 # at least this much of each type of memory can be allocated
319 # from a single memory range. This way you only end up with
320 # maximum of two fragements for each type in the memory map
321 # (the memory used, and the free memory that was prereserved
324 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIReclaimMemory|0
325 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIMemoryNVS|0
326 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiReservedMemoryType|0
327 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesData|50
328 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesCode|20
329 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesCode|400
330 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesData|20000
331 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderCode|20
332 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderData|0
337 gArmTokenSpaceGuid.PcdArmUncachedMemoryMask|0x0000000000000000
339 # Stacks for MPCores in Secure World
340 gArmPlatformTokenSpaceGuid.PcdCPUCoresSecStackBase|0
341 # Stacks for MPCores in Monitor Mode
342 gArmPlatformTokenSpaceGuid.PcdCPUCoresSecMonStackBase|0
343 # Stacks for MPCores in Normal World
344 gArmPlatformTokenSpaceGuid.PcdCPUCoresStackBase|0
346 gArmTokenSpaceGuid.PcdSystemMemoryBase|0
347 gArmTokenSpaceGuid.PcdSystemMemorySize|0
349 ################################################################################
351 # Components Section - list of all EDK II Modules needed by this Platform
353 ################################################################################
359 ArmPlatformPkg/Sec/Sec.inf {
361 # Use the implementation which set the Secure bits
362 ArmGicLib|ArmPkg/Drivers/ArmGic/ArmGicSecLib.inf
368 ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf {
370 ArmPlatformGlobalVariableLib|ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Pei/PeiArmPlatformGlobalVariableLib.inf
372 MdeModulePkg/Core/Pei/PeiMain.inf
373 MdeModulePkg/Universal/PCD/Pei/Pcd.inf {
375 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
377 ArmPlatformPkg/PlatformPei/PlatformPeim.inf
378 ArmPlatformPkg/MemoryInitPei/MemoryInitPeim.inf
379 ArmPkg/Drivers/CpuPei/CpuPei.inf
380 IntelFrameworkModulePkg/Universal/StatusCode/Pei/StatusCodePei.inf
381 Nt32Pkg/BootModePei/BootModePei.inf
382 MdeModulePkg/Universal/Variable/Pei/VariablePei.inf
383 MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf {
385 NULL|MdeModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf
391 MdeModulePkg/Core/Dxe/DxeMain.inf {
393 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
394 NULL|MdeModulePkg/Library/DxeCrc32GuidedSectionExtractLib/DxeCrc32GuidedSectionExtractLib.inf
398 # Architectural Protocols
400 ArmPkg/Drivers/CpuDxe/CpuDxe.inf
401 MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf
402 MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf
403 MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf
404 MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf
405 MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariableRuntimeDxe.inf
406 EmbeddedPkg/EmbeddedMonotonicCounter/EmbeddedMonotonicCounter.inf
408 EmbeddedPkg/ResetRuntimeDxe/ResetRuntimeDxe.inf
409 EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf
410 EmbeddedPkg/MetronomeDxe/MetronomeDxe.inf
412 # Simple TextIn/TextOut for UEFI Terminal
413 EmbeddedPkg/SimpleTextInOutSerial/SimpleTextInOutSerial.inf
416 # Semi-hosting filesystem
418 ArmPkg/Filesystem/SemihostFs/SemihostFs.inf
421 # FAT filesystem + GPT/MBR partitioning
423 MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf
424 MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
425 MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
430 EmbeddedPkg/Ebl/Ebl.inf
435 MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
436 ArmPlatformPkg/Bds/Bds.inf