]> git.proxmox.com Git - mirror_edk2.git/blob - ArmPlatformPkg/ArmVExpressPkg/ArmVExpress.dsc.inc
676cc8c84c306a45b598d1acc9dc8ebd428ba449
[mirror_edk2.git] / ArmPlatformPkg / ArmVExpressPkg / ArmVExpress.dsc.inc
1 #
2 # Copyright (c) 2011-2015, ARM Limited. All rights reserved.
3 # Copyright (c) 2015, Intel Corporation. All rights reserved.
4 #
5 # This program and the accompanying materials
6 # are licensed and made available under the terms and conditions of the BSD License
7 # which accompanies this distribution. The full text of the license may be found at
8 # http://opensource.org/licenses/bsd-license.php
9 #
10 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12 #
13 #
14
15 [Defines]
16 USE_ARM_BDS = FALSE
17 SECURE_BOOT_ENABLE = FALSE
18
19 [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]
20 GCC:*_*_ARM_DLINK_FLAGS = -z common-page-size=0x1000
21 GCC:*_*_AARCH64_DLINK_FLAGS = -z common-page-size=0x10000
22
23 [LibraryClasses.common]
24 !if $(TARGET) == RELEASE
25 DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
26 UncachedMemoryAllocationLib|ArmPkg/Library/UncachedMemoryAllocationLib/UncachedMemoryAllocationLib.inf
27 !else
28 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
29 UncachedMemoryAllocationLib|ArmPkg/Library/UncachedMemoryAllocationLib/UncachedMemoryAllocationLib.inf
30 # UncachedMemoryAllocationLib|ArmPkg/Library/DebugUncachedMemoryAllocationLib/DebugUncachedMemoryAllocationLib.inf
31 !endif
32 DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
33
34 BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
35 SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf
36 PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
37 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
38 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
39 PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
40 IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
41 UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf
42 CpuLib|MdePkg/Library/BaseCpuLib/BaseCpuLib.inf
43
44 UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
45 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
46 UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
47 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
48 UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
49 DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
50 UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
51 UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
52 HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
53 UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf
54
55 UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf
56
57 #
58 # Assume everything is fixed at build
59 #
60 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
61
62 # 1/123 faster than Stm or Vstm version
63 #BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
64 BaseMemoryLib|ArmPkg/Library/BaseMemoryLibStm/BaseMemoryLibStm.inf
65
66 # Networking Requirements
67 NetLib|MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf
68 DpcLib|MdeModulePkg/Library/DxeDpcLib/DxeDpcLib.inf
69 UdpIoLib|MdeModulePkg/Library/DxeUdpIoLib/DxeUdpIoLib.inf
70 IpIoLib|MdeModulePkg/Library/DxeIpIoLib/DxeIpIoLib.inf
71
72 # ARM Architectural Libraries
73 CacheMaintenanceLib|ArmPkg/Library/ArmCacheMaintenanceLib/ArmCacheMaintenanceLib.inf
74 DefaultExceptionHandlerLib|ArmPkg/Library/DefaultExceptionHandlerLib/DefaultExceptionHandlerLib.inf
75 CpuExceptionHandlerLib|MdeModulePkg/Library/CpuExceptionHandlerLibNull/CpuExceptionHandlerLibNull.inf
76 ArmDisassemblerLib|ArmPkg/Library/ArmDisassemblerLib/ArmDisassemblerLib.inf
77 DmaLib|ArmPkg/Library/ArmDmaLib/ArmDmaLib.inf
78 ArmGicLib|ArmPkg/Drivers/ArmGic/ArmGicLib.inf
79 ArmGicArchLib|ArmPkg/Library/ArmGicArchLib/ArmGicArchLib.inf
80 ArmPlatformStackLib|ArmPlatformPkg/Library/ArmPlatformStackLib/ArmPlatformStackLib.inf
81 ArmSmcLib|ArmPkg/Library/ArmSmcLib/ArmSmcLib.inf
82 ArmGenericTimerCounterLib|ArmPkg/Library/ArmGenericTimerPhyCounterLib/ArmGenericTimerPhyCounterLib.inf
83
84 # Versatile Express Specific Libraries
85 PlatformPeiLib|ArmPlatformPkg/PlatformPei/PlatformPeiLib.inf
86 ArmPlatformSysConfigLib|ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressSysConfigLib/ArmVExpressSysConfigLib.inf
87 NorFlashPlatformLib|ArmPlatformPkg/ArmVExpressPkg/Library/NorFlashArmVExpressLib/NorFlashArmVExpressLib.inf
88 EfiResetSystemLib|ArmPlatformPkg/ArmVExpressPkg/Library/ResetSystemLib/ResetSystemLib.inf
89 # ARM PL111 Lcd Driver
90 LcdPlatformLib|ArmPlatformPkg/ArmVExpressPkg/Library/PL111LcdArmVExpressLib/PL111LcdArmVExpressLib.inf
91 # ARM PL031 RTC Driver
92 RealTimeClockLib|ArmPlatformPkg/Library/PL031RealTimeClockLib/PL031RealTimeClockLib.inf
93 # ARM PL354 SMC Driver
94 PL35xSmcLib|ArmPlatformPkg/Drivers/PL35xSmc/PL35xSmc.inf
95 # ARM PL011 UART Driver
96 PL011UartLib|ArmPlatformPkg/Drivers/PL011Uart/PL011Uart.inf
97 SerialPortLib|ArmPlatformPkg/Library/PL011SerialPortLib/PL011SerialPortLib.inf
98 # ARM SP804 Dual Timer Driver
99 TimerLib|ArmPlatformPkg/Library/SP804TimerLib/SP804TimerLib.inf
100
101 # EBL Related Libraries
102 EblCmdLib|ArmPlatformPkg/Library/EblCmdLib/EblCmdLib.inf
103 EfiFileLib|EmbeddedPkg/Library/EfiFileLib/EfiFileLib.inf
104 EblAddExternalCommandLib|EmbeddedPkg/Library/EblAddExternalCommandLib/EblAddExternalCommandLib.inf
105 EblNetworkLib|EmbeddedPkg/Library/EblNetworkLib/EblNetworkLib.inf
106
107 #
108 # Uncomment (and comment out the next line) For RealView Debugger. The Standard IO window
109 # in the debugger will show load and unload commands for symbols. You can cut and paste this
110 # into the command window to load symbols. We should be able to use a script to do this, but
111 # the version of RVD I have does not support scripts accessing system memory.
112 #
113 #PeCoffExtraActionLib|ArmPkg/Library/RvdPeCoffExtraActionLib/RvdPeCoffExtraActionLib.inf
114 PeCoffExtraActionLib|ArmPkg/Library/DebugPeCoffExtraActionLib/DebugPeCoffExtraActionLib.inf
115 #PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf
116
117 DebugAgentLib|MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf
118 DebugAgentTimerLib|EmbeddedPkg/Library/DebugAgentTimerLibNull/DebugAgentTimerLibNull.inf
119
120 SemihostLib|ArmPkg/Library/SemihostLib/SemihostLib.inf
121
122 # BDS Libraries
123 BdsLib|ArmPkg/Library/BdsLib/BdsLib.inf
124
125 AcpiLib|EmbeddedPkg/Library/AcpiLib/AcpiLib.inf
126 FdtLib|EmbeddedPkg/Library/FdtLib/FdtLib.inf
127
128 # RunAxf support via Dynamic Shell Command protocol
129 # It uses the Shell libraries.
130 ArmShellCmdRunAxfLib|ArmPlatformPkg/Library/ArmShellCmdRunAxf/ArmShellCmdRunAxf.inf
131 ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
132 FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
133 SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf
134
135 #
136 # Secure Boot dependencies
137 #
138 !if $(SECURE_BOOT_ENABLE) == TRUE
139 IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
140 OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
141 TpmMeasurementLib|SecurityPkg/Library/DxeTpmMeasurementLib/DxeTpmMeasurementLib.inf
142 AuthVariableLib|SecurityPkg/Library/AuthVariableLib/AuthVariableLib.inf
143 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
144
145 # re-use the UserPhysicalPresent() dummy implementation from the ovmf tree
146 PlatformSecureLib|OvmfPkg/Library/PlatformSecureLib/PlatformSecureLib.inf
147 !else
148 TpmMeasurementLib|MdeModulePkg/Library/TpmMeasurementLibNull/TpmMeasurementLibNull.inf
149 AuthVariableLib|MdeModulePkg/Library/AuthVariableLibNull/AuthVariableLibNull.inf
150 !endif
151 VarCheckLib|MdeModulePkg/Library/VarCheckLib/VarCheckLib.inf
152
153 !if $(USE_ARM_BDS) == FALSE
154 CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf
155 GenericBdsLib|IntelFrameworkModulePkg/Library/GenericBdsLib/GenericBdsLib.inf
156 PlatformBdsLib|ArmPlatformPkg/Library/PlatformIntelBdsLib/PlatformIntelBdsLib.inf
157 CustomizedDisplayLib|MdeModulePkg/Library/CustomizedDisplayLib/CustomizedDisplayLib.inf
158 !endif
159
160 [LibraryClasses.common.SEC]
161 ArmPlatformSecExtraActionLib|ArmPlatformPkg/Library/DebugSecExtraActionLib/DebugSecExtraActionLib.inf
162 ArmPlatformGlobalVariableLib|ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Sec/SecArmPlatformGlobalVariableLib.inf
163
164 DebugAgentLib|ArmPkg/Library/DebugAgentSymbolsBaseLib/DebugAgentSymbolsBaseLib.inf
165 DefaultExceptionHandlerLib|ArmPkg/Library/DefaultExceptionHandlerLib/DefaultExceptionHandlerLibBase.inf
166
167 !ifdef $(EDK2_SKIP_PEICORE)
168 PrePiLib|EmbeddedPkg/Library/PrePiLib/PrePiLib.inf
169 ExtractGuidedSectionLib|EmbeddedPkg/Library/PrePiExtractGuidedSectionLib/PrePiExtractGuidedSectionLib.inf
170 LzmaDecompressLib|MdeModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf
171 MemoryAllocationLib|EmbeddedPkg/Library/PrePiMemoryAllocationLib/PrePiMemoryAllocationLib.inf
172 HobLib|EmbeddedPkg/Library/PrePiHobLib/PrePiHobLib.inf
173 PrePiHobListPointerLib|ArmPlatformPkg/Library/PrePiHobListPointerLib/PrePiHobListPointerLib.inf
174 PerformanceLib|MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib.inf
175 !endif
176
177 # Trustzone Support
178 ArmTrustedMonitorLib|ArmPlatformPkg/Library/ArmTrustedMonitorLibNull/ArmTrustedMonitorLibNull.inf
179
180 ArmGicArchLib|ArmPkg/Library/ArmGicArchSecLib/ArmGicArchSecLib.inf
181
182 [LibraryClasses.common.PEI_CORE]
183 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
184 PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
185 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
186 PeiCoreEntryPoint|MdePkg/Library/PeiCoreEntryPoint/PeiCoreEntryPoint.inf
187 PerformanceLib|MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib.inf
188 ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf
189 OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf
190 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
191 UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf
192 ExtractGuidedSectionLib|MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.inf
193
194 ArmPlatformGlobalVariableLib|ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Pei/PeiArmPlatformGlobalVariableLib.inf
195 PeiServicesTablePointerLib|ArmPkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf
196
197 [LibraryClasses.common.PEIM]
198 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
199 PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
200 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
201 PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf
202 PerformanceLib|MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib.inf
203 ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf
204 OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf
205 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
206 PeiResourcePublicationLib|MdePkg/Library/PeiResourcePublicationLib/PeiResourcePublicationLib.inf
207 UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf
208 ExtractGuidedSectionLib|MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.inf
209
210 ArmPlatformGlobalVariableLib|ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Pei/PeiArmPlatformGlobalVariableLib.inf
211 PeiServicesTablePointerLib|ArmPkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf
212
213 [LibraryClasses.common.SEC, LibraryClasses.common.PEIM]
214 MemoryInitPeiLib|ArmPlatformPkg/MemoryInitPei/MemoryInitPeiLib.inf
215
216 [LibraryClasses.common.DXE_CORE]
217 HobLib|MdePkg/Library/DxeCoreHobLib/DxeCoreHobLib.inf
218 MemoryAllocationLib|MdeModulePkg/Library/DxeCoreMemoryAllocationLib/DxeCoreMemoryAllocationLib.inf
219 DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf
220 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
221 ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf
222 UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf
223 DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
224 PerformanceLib|MdeModulePkg/Library/DxeCorePerformanceLib/DxeCorePerformanceLib.inf
225
226 [LibraryClasses.common.DXE_DRIVER]
227 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
228 DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
229 SecurityManagementLib|MdeModulePkg/Library/DxeSecurityManagementLib/DxeSecurityManagementLib.inf
230 PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf
231 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
232 ArmPlatformGlobalVariableLib|ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Dxe/DxeArmPlatformGlobalVariableLib.inf
233
234 [LibraryClasses.common.UEFI_APPLICATION]
235 UefiDecompressLib|IntelFrameworkModulePkg/Library/BaseUefiTianoCustomDecompressLib/BaseUefiTianoCustomDecompressLib.inf
236 PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf
237 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
238 HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
239
240 [LibraryClasses.common.UEFI_DRIVER]
241 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
242 UefiDecompressLib|IntelFrameworkModulePkg/Library/BaseUefiTianoCustomDecompressLib/BaseUefiTianoCustomDecompressLib.inf
243 ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf
244 PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf
245 DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
246 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
247
248 [LibraryClasses.common.DXE_RUNTIME_DRIVER]
249 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
250 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
251 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
252 CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf
253 ArmPlatformSysConfigLib|ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressSysConfigRuntimeLib/ArmVExpressSysConfigRuntimeLib.inf
254 !if $(SECURE_BOOT_ENABLE) == TRUE
255 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf
256 !endif
257
258 [LibraryClasses.AARCH64.DXE_RUNTIME_DRIVER]
259 #
260 # PSCI support in EL3 may not be available if we are not running under a PSCI
261 # compliant secure firmware, but since the default VExpress EfiResetSystemLib
262 # cannot be supported at runtime (due to the fact that the syscfg MMIO registers
263 # cannot be runtime remapped), it is our best bet to get ResetSystem functionality
264 # on these platforms.
265 #
266 EfiResetSystemLib|ArmPkg/Library/ArmPsciResetSystemLib/ArmPsciResetSystemLib.inf
267
268 [LibraryClasses.ARM, LibraryClasses.AARCH64]
269 #
270 # It is not possible to prevent the ARM compiler for generic intrinsic functions.
271 # This library provides the instrinsic functions generate by a given compiler.
272 # [LibraryClasses.ARM] and NULL mean link this library into all ARM images.
273 #
274 NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
275
276 # Add support for GCC stack protector
277 NULL|MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf
278
279
280 [BuildOptions]
281 RVCT:RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG
282
283 GCC:RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG
284
285 ################################################################################
286 #
287 # Pcd Section - list of all EDK II PCD Entries defined by this Platform
288 #
289 ################################################################################
290
291 [PcdsFeatureFlag.common]
292 gEfiMdePkgTokenSpaceGuid.PcdComponentNameDisable|TRUE
293 gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnosticsDisable|TRUE
294 gEfiMdePkgTokenSpaceGuid.PcdComponentName2Disable|TRUE
295 gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnostics2Disable|TRUE
296
297 #
298 # Control what commands are supported from the UI
299 # Turn these on and off to add features or save size
300 #
301 gEmbeddedTokenSpaceGuid.PcdEmbeddedMacBoot|TRUE
302 gEmbeddedTokenSpaceGuid.PcdEmbeddedDirCmd|TRUE
303 gEmbeddedTokenSpaceGuid.PcdEmbeddedHobCmd|TRUE
304 gEmbeddedTokenSpaceGuid.PcdEmbeddedHwDebugCmd|TRUE
305 gEmbeddedTokenSpaceGuid.PcdEmbeddedPciDebugCmd|TRUE
306 gEmbeddedTokenSpaceGuid.PcdEmbeddedIoEnable|FALSE
307 gEmbeddedTokenSpaceGuid.PcdEmbeddedScriptCmd|FALSE
308
309 gEmbeddedTokenSpaceGuid.PcdCacheEnable|TRUE
310
311 # Use the Vector Table location in CpuDxe. We will not copy the Vector Table at PcdCpuVectorBaseAddress
312 gArmTokenSpaceGuid.PcdRelocateVectorTable|FALSE
313
314 gEmbeddedTokenSpaceGuid.PcdPrePiProduceMemoryTypeInformationHob|TRUE
315
316 gEfiMdeModulePkgTokenSpaceGuid.PcdTurnOffUsbLegacySupport|TRUE
317
318 [PcdsFixedAtBuild.common]
319 gArmPlatformTokenSpaceGuid.PcdFirmwareVendor|"ARM Versatile Express"
320 !ifdef $(FIRMWARE_VER)
321 gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVersionString|L"$(FIRMWARE_VER)"
322 !endif
323
324 gEmbeddedTokenSpaceGuid.PcdEmbeddedPrompt|"VExpress"
325 gEfiMdePkgTokenSpaceGuid.PcdMaximumUnicodeStringLength|1000000
326 gEfiMdePkgTokenSpaceGuid.PcdMaximumAsciiStringLength|1000000
327 gEfiMdePkgTokenSpaceGuid.PcdMaximumLinkedListLength|1000000
328 gEfiMdePkgTokenSpaceGuid.PcdSpinLockTimeout|10000000
329 gEfiMdePkgTokenSpaceGuid.PcdDebugClearMemoryValue|0xAF
330 gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask|1
331 gEfiMdePkgTokenSpaceGuid.PcdPostCodePropertyMask|0
332 gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|320
333
334 # DEBUG_ASSERT_ENABLED 0x01
335 # DEBUG_PRINT_ENABLED 0x02
336 # DEBUG_CODE_ENABLED 0x04
337 # CLEAR_MEMORY_ENABLED 0x08
338 # ASSERT_BREAKPOINT_ENABLED 0x10
339 # ASSERT_DEADLOOP_ENABLED 0x20
340 !if $(TARGET) == RELEASE
341 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x21
342 !else
343 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x2f
344 !endif
345
346 # DEBUG_INIT 0x00000001 // Initialization
347 # DEBUG_WARN 0x00000002 // Warnings
348 # DEBUG_LOAD 0x00000004 // Load events
349 # DEBUG_FS 0x00000008 // EFI File system
350 # DEBUG_POOL 0x00000010 // Alloc & Free's
351 # DEBUG_PAGE 0x00000020 // Alloc & Free's
352 # DEBUG_INFO 0x00000040 // Verbose
353 # DEBUG_DISPATCH 0x00000080 // PEI/DXE Dispatchers
354 # DEBUG_VARIABLE 0x00000100 // Variable
355 # DEBUG_BM 0x00000400 // Boot Manager
356 # DEBUG_BLKIO 0x00001000 // BlkIo Driver
357 # DEBUG_NET 0x00004000 // SNI Driver
358 # DEBUG_UNDI 0x00010000 // UNDI Driver
359 # DEBUG_LOADFILE 0x00020000 // UNDI Driver
360 # DEBUG_EVENT 0x00080000 // Event messages
361 # DEBUG_GCD 0x00100000 // Global Coherency Database changes
362 # DEBUG_CACHE 0x00200000 // Memory range cachability changes
363 # DEBUG_ERROR 0x80000000 // Error
364 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x8000000F
365
366 gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x07
367
368 gEmbeddedTokenSpaceGuid.PcdEmbeddedAutomaticBootCommand|""
369 gEmbeddedTokenSpaceGuid.PcdEmbeddedDefaultTextColor|0x07
370 gEmbeddedTokenSpaceGuid.PcdEmbeddedMemVariableStoreSize|0x10000
371
372 #
373 # Optional feature to help prevent EFI memory map fragments
374 # Turned on and off via: PcdPrePiProduceMemoryTypeInformationHob
375 # Values are in EFI Pages (4K). DXE Core will make sure that
376 # at least this much of each type of memory can be allocated
377 # from a single memory range. This way you only end up with
378 # maximum of two fragements for each type in the memory map
379 # (the memory used, and the free memory that was prereserved
380 # but not used).
381 #
382 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIReclaimMemory|0
383 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIMemoryNVS|0
384 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiReservedMemoryType|0
385 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesData|80
386 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesCode|65
387 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesCode|400
388 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesData|20000
389 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderCode|20
390 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderData|0
391
392 # Device path of block device on which Android Fastboot should flash
393 # partitions. We just use the SD card on VExpress.
394 gArmVExpressTokenSpaceGuid.PcdAndroidFastbootNvmDevicePath|L"VenHw(09831032-6FA3-4484-AF4F-0A000A8D3A82)"
395
396 #
397 # ARM Pcds
398 #
399 gArmTokenSpaceGuid.PcdArmUncachedMemoryMask|0x0000000000000000
400
401 #
402 # ARM PrimeCell
403 #
404
405 #
406 # FileSystem
407 #
408
409 # List of Device Paths that support BootMonFs
410 gArmPlatformTokenSpaceGuid.PcdBootMonFsSupportedDevicePaths|L"VenHw(E7223039-5836-41E1-B542-D7EC736C5E59);VenHw(1F15DA3C-37FF-4070-B471-BB4AF12A724A)"
411
412 #
413 # ARM OS Loader
414 #
415 gArmPlatformTokenSpaceGuid.PcdDefaultBootDescription|L"Linux from NorFlash"
416 gArmPlatformTokenSpaceGuid.PcdDefaultBootDevicePath|L"VenHw(E7223039-5836-41E1-B542-D7EC736C5E59)/Image"
417
418 # Use the serial console (ConIn & ConOut) and the Graphic driver (ConOut)
419 gArmPlatformTokenSpaceGuid.PcdDefaultConOutPaths|L"VenHw(D3987D4B-971A-435F-8CAF-4967EB627241)/Uart(38400,8,N,1)/VenPcAnsi();VenHw(CE660500-824D-11E0-AC72-0002A5D5C51B)"
420 gArmPlatformTokenSpaceGuid.PcdDefaultConInPaths|L"VenHw(D3987D4B-971A-435F-8CAF-4967EB627241)/Uart(38400,8,N,1)/VenPcAnsi()"
421 gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut|10
422
423 # RunAxf support via Dynamic Shell Command protocol
424 # We want to use the Shell Libraries but don't want it to initialise
425 # automatically. We initialise the libraries when the command is called by the
426 # Shell.
427 gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
428
429 !if $(USE_ARM_BDS) == FALSE
430 gEfiMdeModulePkgTokenSpaceGuid.PcdResetOnMemoryTypeInformationChange|FALSE
431 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdShellFile|{ 0x83, 0xA5, 0x04, 0x7C, 0x3E, 0x9E, 0x1C, 0x4F, 0xAD, 0x65, 0xE0, 0x52, 0x68, 0xD0, 0xB4, 0xD1 }
432 !endif
433
434 !if $(SECURE_BOOT_ENABLE) == TRUE
435 # override the default values from SecurityPkg to ensure images from all sources are verified in secure boot
436 gEfiSecurityPkgTokenSpaceGuid.PcdOptionRomImageVerificationPolicy|0x04
437 gEfiSecurityPkgTokenSpaceGuid.PcdFixedMediaImageVerificationPolicy|0x04
438 gEfiSecurityPkgTokenSpaceGuid.PcdRemovableMediaImageVerificationPolicy|0x04
439 !endif
440
441 [Components.common]
442 MdeModulePkg/Universal/PCD/Dxe/Pcd.inf
443
444 # Versatile Express FileSystem
445 ArmPlatformPkg/FileSystem/BootMonFs/BootMonFs.inf
446
447 #
448 # Networking stack
449 #
450 MdeModulePkg/Universal/Network/DpcDxe/DpcDxe.inf
451 MdeModulePkg/Universal/Network/ArpDxe/ArpDxe.inf
452 MdeModulePkg/Universal/Network/Dhcp4Dxe/Dhcp4Dxe.inf
453 MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Dxe.inf
454 MdeModulePkg/Universal/Network/MnpDxe/MnpDxe.inf
455 MdeModulePkg/Universal/Network/VlanConfigDxe/VlanConfigDxe.inf
456 MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Dxe.inf
457 MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf
458 MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Dxe.inf
459 MdeModulePkg/Universal/Network/UefiPxeBcDxe/UefiPxeBcDxe.inf
460 MdeModulePkg/Universal/Network/IScsiDxe/IScsiDxe.inf
461
462 # ISP1761 USB OTG Controller
463 EmbeddedPkg/Drivers/Isp1761UsbDxe/Isp1761UsbDxe.inf
464
465 #
466 # Android Fastboot
467 #
468 EmbeddedPkg/Application/AndroidFastboot/AndroidFastbootApp.inf
469 EmbeddedPkg/Drivers/AndroidFastbootTransportUsbDxe/FastbootTransportUsbDxe.inf
470 ArmPlatformPkg/ArmVExpressPkg/ArmVExpressFastBootDxe/ArmVExpressFastBootDxe.inf
471
472 # FV Filesystem
473 MdeModulePkg/Universal/FvSimpleFileSystemDxe/FvSimpleFileSystemDxe.inf
474
475 #
476 # FDT installation
477 #
478 EmbeddedPkg/Drivers/FdtPlatformDxe/FdtPlatformDxe.inf
479
480 # Legacy Linux Loader
481 ArmPkg/Application/LinuxLoader/LinuxLoader.inf