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