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 163 DebugAgentLib|ArmPkg/Library/DebugAgentSymbolsBaseLib/DebugAgentSymbolsBaseLib.inf 164 DefaultExceptionHandlerLib|ArmPkg/Library/DefaultExceptionHandlerLib/DefaultExceptionHandlerLibBase.inf 165 166!ifdef $(EDK2_SKIP_PEICORE) 167 PrePiLib|EmbeddedPkg/Library/PrePiLib/PrePiLib.inf 168 ExtractGuidedSectionLib|EmbeddedPkg/Library/PrePiExtractGuidedSectionLib/PrePiExtractGuidedSectionLib.inf 169 LzmaDecompressLib|MdeModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf 170 MemoryAllocationLib|EmbeddedPkg/Library/PrePiMemoryAllocationLib/PrePiMemoryAllocationLib.inf 171 HobLib|EmbeddedPkg/Library/PrePiHobLib/PrePiHobLib.inf 172 PrePiHobListPointerLib|ArmPlatformPkg/Library/PrePiHobListPointerLib/PrePiHobListPointerLib.inf 173 PerformanceLib|MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib.inf 174!endif 175 176 # Trustzone Support 177 ArmTrustedMonitorLib|ArmPlatformPkg/Library/ArmTrustedMonitorLibNull/ArmTrustedMonitorLibNull.inf 178 179 ArmGicArchLib|ArmPkg/Library/ArmGicArchSecLib/ArmGicArchSecLib.inf 180 181[LibraryClasses.common.PEI_CORE] 182 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf 183 PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf 184 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf 185 PeiCoreEntryPoint|MdePkg/Library/PeiCoreEntryPoint/PeiCoreEntryPoint.inf 186 PerformanceLib|MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib.inf 187 ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf 188 OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf 189 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf 190 UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf 191 ExtractGuidedSectionLib|MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.inf 192 193 PeiServicesTablePointerLib|ArmPkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf 194 195[LibraryClasses.common.PEIM] 196 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf 197 PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf 198 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf 199 PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf 200 PerformanceLib|MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib.inf 201 ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf 202 OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf 203 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf 204 PeiResourcePublicationLib|MdePkg/Library/PeiResourcePublicationLib/PeiResourcePublicationLib.inf 205 UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf 206 ExtractGuidedSectionLib|MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.inf 207 208 PeiServicesTablePointerLib|ArmPkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf 209 210[LibraryClasses.common.SEC, LibraryClasses.common.PEIM] 211 MemoryInitPeiLib|ArmPlatformPkg/MemoryInitPei/MemoryInitPeiLib.inf 212 213[LibraryClasses.common.DXE_CORE] 214 HobLib|MdePkg/Library/DxeCoreHobLib/DxeCoreHobLib.inf 215 MemoryAllocationLib|MdeModulePkg/Library/DxeCoreMemoryAllocationLib/DxeCoreMemoryAllocationLib.inf 216 DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf 217 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf 218 ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf 219 UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf 220 DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf 221 PerformanceLib|MdeModulePkg/Library/DxeCorePerformanceLib/DxeCorePerformanceLib.inf 222 223[LibraryClasses.common.DXE_DRIVER] 224 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf 225 DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf 226 SecurityManagementLib|MdeModulePkg/Library/DxeSecurityManagementLib/DxeSecurityManagementLib.inf 227 PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf 228 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf 229 230[LibraryClasses.common.UEFI_APPLICATION] 231 UefiDecompressLib|IntelFrameworkModulePkg/Library/BaseUefiTianoCustomDecompressLib/BaseUefiTianoCustomDecompressLib.inf 232 PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf 233 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf 234 HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf 235 236[LibraryClasses.common.UEFI_DRIVER] 237 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf 238 UefiDecompressLib|IntelFrameworkModulePkg/Library/BaseUefiTianoCustomDecompressLib/BaseUefiTianoCustomDecompressLib.inf 239 ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf 240 PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf 241 DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf 242 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf 243 244[LibraryClasses.common.DXE_RUNTIME_DRIVER] 245 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf 246 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf 247 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf 248 CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf 249 ArmPlatformSysConfigLib|ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressSysConfigRuntimeLib/ArmVExpressSysConfigRuntimeLib.inf 250!if $(SECURE_BOOT_ENABLE) == TRUE 251 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf 252!endif 253 254[LibraryClasses.AARCH64.DXE_RUNTIME_DRIVER] 255 # 256 # PSCI support in EL3 may not be available if we are not running under a PSCI 257 # compliant secure firmware, but since the default VExpress EfiResetSystemLib 258 # cannot be supported at runtime (due to the fact that the syscfg MMIO registers 259 # cannot be runtime remapped), it is our best bet to get ResetSystem functionality 260 # on these platforms. 261 # 262 EfiResetSystemLib|ArmPkg/Library/ArmPsciResetSystemLib/ArmPsciResetSystemLib.inf 263 264[LibraryClasses.ARM, LibraryClasses.AARCH64] 265 # 266 # It is not possible to prevent the ARM compiler for generic intrinsic functions. 267 # This library provides the instrinsic functions generate by a given compiler. 268 # [LibraryClasses.ARM] and NULL mean link this library into all ARM images. 269 # 270 NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf 271 272 # Add support for GCC stack protector 273 NULL|MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf 274 275 276[BuildOptions] 277 RVCT:RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG 278 279 GCC:RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG 280 281################################################################################ 282# 283# Pcd Section - list of all EDK II PCD Entries defined by this Platform 284# 285################################################################################ 286 287[PcdsFeatureFlag.common] 288 gEfiMdePkgTokenSpaceGuid.PcdComponentNameDisable|TRUE 289 gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnosticsDisable|TRUE 290 gEfiMdePkgTokenSpaceGuid.PcdComponentName2Disable|TRUE 291 gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnostics2Disable|TRUE 292 293 # 294 # Control what commands are supported from the UI 295 # Turn these on and off to add features or save size 296 # 297 gEmbeddedTokenSpaceGuid.PcdEmbeddedMacBoot|TRUE 298 gEmbeddedTokenSpaceGuid.PcdEmbeddedDirCmd|TRUE 299 gEmbeddedTokenSpaceGuid.PcdEmbeddedHobCmd|TRUE 300 gEmbeddedTokenSpaceGuid.PcdEmbeddedHwDebugCmd|TRUE 301 gEmbeddedTokenSpaceGuid.PcdEmbeddedPciDebugCmd|TRUE 302 gEmbeddedTokenSpaceGuid.PcdEmbeddedIoEnable|FALSE 303 gEmbeddedTokenSpaceGuid.PcdEmbeddedScriptCmd|FALSE 304 305 gEmbeddedTokenSpaceGuid.PcdCacheEnable|TRUE 306 307 # Use the Vector Table location in CpuDxe. We will not copy the Vector Table at PcdCpuVectorBaseAddress 308 gArmTokenSpaceGuid.PcdRelocateVectorTable|FALSE 309 310 gEmbeddedTokenSpaceGuid.PcdPrePiProduceMemoryTypeInformationHob|TRUE 311 312 gEfiMdeModulePkgTokenSpaceGuid.PcdTurnOffUsbLegacySupport|TRUE 313 314[PcdsFixedAtBuild.common] 315 gArmPlatformTokenSpaceGuid.PcdFirmwareVendor|"ARM Versatile Express" 316!ifdef $(FIRMWARE_VER) 317 gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVersionString|L"$(FIRMWARE_VER)" 318!endif 319 320 gEmbeddedTokenSpaceGuid.PcdEmbeddedPrompt|"VExpress" 321 gEfiMdePkgTokenSpaceGuid.PcdMaximumUnicodeStringLength|1000000 322 gEfiMdePkgTokenSpaceGuid.PcdMaximumAsciiStringLength|1000000 323 gEfiMdePkgTokenSpaceGuid.PcdMaximumLinkedListLength|1000000 324 gEfiMdePkgTokenSpaceGuid.PcdSpinLockTimeout|10000000 325 gEfiMdePkgTokenSpaceGuid.PcdDebugClearMemoryValue|0xAF 326 gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask|1 327 gEfiMdePkgTokenSpaceGuid.PcdPostCodePropertyMask|0 328 gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|320 329 330 # DEBUG_ASSERT_ENABLED 0x01 331 # DEBUG_PRINT_ENABLED 0x02 332 # DEBUG_CODE_ENABLED 0x04 333 # CLEAR_MEMORY_ENABLED 0x08 334 # ASSERT_BREAKPOINT_ENABLED 0x10 335 # ASSERT_DEADLOOP_ENABLED 0x20 336!if $(TARGET) == RELEASE 337 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x21 338!else 339 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x2f 340!endif 341 342 # DEBUG_INIT 0x00000001 // Initialization 343 # DEBUG_WARN 0x00000002 // Warnings 344 # DEBUG_LOAD 0x00000004 // Load events 345 # DEBUG_FS 0x00000008 // EFI File system 346 # DEBUG_POOL 0x00000010 // Alloc & Free's 347 # DEBUG_PAGE 0x00000020 // Alloc & Free's 348 # DEBUG_INFO 0x00000040 // Verbose 349 # DEBUG_DISPATCH 0x00000080 // PEI/DXE Dispatchers 350 # DEBUG_VARIABLE 0x00000100 // Variable 351 # DEBUG_BM 0x00000400 // Boot Manager 352 # DEBUG_BLKIO 0x00001000 // BlkIo Driver 353 # DEBUG_NET 0x00004000 // SNI Driver 354 # DEBUG_UNDI 0x00010000 // UNDI Driver 355 # DEBUG_LOADFILE 0x00020000 // UNDI Driver 356 # DEBUG_EVENT 0x00080000 // Event messages 357 # DEBUG_GCD 0x00100000 // Global Coherency Database changes 358 # DEBUG_CACHE 0x00200000 // Memory range cachability changes 359 # DEBUG_ERROR 0x80000000 // Error 360 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x8000000F 361 362 gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x07 363 364 gEmbeddedTokenSpaceGuid.PcdEmbeddedAutomaticBootCommand|"" 365 gEmbeddedTokenSpaceGuid.PcdEmbeddedDefaultTextColor|0x07 366 gEmbeddedTokenSpaceGuid.PcdEmbeddedMemVariableStoreSize|0x10000 367 368 # 369 # Optional feature to help prevent EFI memory map fragments 370 # Turned on and off via: PcdPrePiProduceMemoryTypeInformationHob 371 # Values are in EFI Pages (4K). DXE Core will make sure that 372 # at least this much of each type of memory can be allocated 373 # from a single memory range. This way you only end up with 374 # maximum of two fragements for each type in the memory map 375 # (the memory used, and the free memory that was prereserved 376 # but not used). 377 # 378 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIReclaimMemory|0 379 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIMemoryNVS|0 380 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiReservedMemoryType|0 381 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesData|80 382 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesCode|65 383 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesCode|400 384 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesData|20000 385 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderCode|20 386 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderData|0 387 388 # Device path of block device on which Android Fastboot should flash 389 # partitions. We just use the SD card on VExpress. 390 gArmVExpressTokenSpaceGuid.PcdAndroidFastbootNvmDevicePath|L"VenHw(09831032-6FA3-4484-AF4F-0A000A8D3A82)" 391 392 # 393 # ARM Pcds 394 # 395 gArmTokenSpaceGuid.PcdArmUncachedMemoryMask|0x0000000000000000 396 397 # 398 # ARM PrimeCell 399 # 400 401 # 402 # FileSystem 403 # 404 405 # List of Device Paths that support BootMonFs 406 gArmPlatformTokenSpaceGuid.PcdBootMonFsSupportedDevicePaths|L"VenHw(E7223039-5836-41E1-B542-D7EC736C5E59);VenHw(1F15DA3C-37FF-4070-B471-BB4AF12A724A)" 407 408 # 409 # ARM OS Loader 410 # 411 gArmPlatformTokenSpaceGuid.PcdDefaultBootDescription|L"Linux from NorFlash" 412 gArmPlatformTokenSpaceGuid.PcdDefaultBootDevicePath|L"VenHw(E7223039-5836-41E1-B542-D7EC736C5E59)/Image" 413 414 # Use the serial console (ConIn & ConOut) and the Graphic driver (ConOut) 415 gArmPlatformTokenSpaceGuid.PcdDefaultConOutPaths|L"VenHw(D3987D4B-971A-435F-8CAF-4967EB627241)/Uart(38400,8,N,1)/VenPcAnsi();VenHw(CE660500-824D-11E0-AC72-0002A5D5C51B)" 416 gArmPlatformTokenSpaceGuid.PcdDefaultConInPaths|L"VenHw(D3987D4B-971A-435F-8CAF-4967EB627241)/Uart(38400,8,N,1)/VenPcAnsi()" 417 gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut|10 418 419 # RunAxf support via Dynamic Shell Command protocol 420 # We want to use the Shell Libraries but don't want it to initialise 421 # automatically. We initialise the libraries when the command is called by the 422 # Shell. 423 gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE 424 425!if $(USE_ARM_BDS) == FALSE 426 gEfiMdeModulePkgTokenSpaceGuid.PcdResetOnMemoryTypeInformationChange|FALSE 427 gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdShellFile|{ 0x83, 0xA5, 0x04, 0x7C, 0x3E, 0x9E, 0x1C, 0x4F, 0xAD, 0x65, 0xE0, 0x52, 0x68, 0xD0, 0xB4, 0xD1 } 428!endif 429 430!if $(SECURE_BOOT_ENABLE) == TRUE 431 # override the default values from SecurityPkg to ensure images from all sources are verified in secure boot 432 gEfiSecurityPkgTokenSpaceGuid.PcdOptionRomImageVerificationPolicy|0x04 433 gEfiSecurityPkgTokenSpaceGuid.PcdFixedMediaImageVerificationPolicy|0x04 434 gEfiSecurityPkgTokenSpaceGuid.PcdRemovableMediaImageVerificationPolicy|0x04 435!endif 436 437[Components.common] 438 MdeModulePkg/Universal/PCD/Dxe/Pcd.inf 439 440 # Versatile Express FileSystem 441 ArmPlatformPkg/FileSystem/BootMonFs/BootMonFs.inf 442 443 # 444 # Networking stack 445 # 446 MdeModulePkg/Universal/Network/DpcDxe/DpcDxe.inf 447 MdeModulePkg/Universal/Network/ArpDxe/ArpDxe.inf 448 MdeModulePkg/Universal/Network/Dhcp4Dxe/Dhcp4Dxe.inf 449 MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Dxe.inf 450 MdeModulePkg/Universal/Network/MnpDxe/MnpDxe.inf 451 MdeModulePkg/Universal/Network/VlanConfigDxe/VlanConfigDxe.inf 452 MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Dxe.inf 453 MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf 454 MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Dxe.inf 455 MdeModulePkg/Universal/Network/UefiPxeBcDxe/UefiPxeBcDxe.inf 456 MdeModulePkg/Universal/Network/IScsiDxe/IScsiDxe.inf 457 458 # ISP1761 USB OTG Controller 459 EmbeddedPkg/Drivers/Isp1761UsbDxe/Isp1761UsbDxe.inf 460 461 # 462 # Android Fastboot 463 # 464 EmbeddedPkg/Application/AndroidFastboot/AndroidFastbootApp.inf 465 EmbeddedPkg/Drivers/AndroidFastbootTransportUsbDxe/FastbootTransportUsbDxe.inf 466 ArmPlatformPkg/ArmVExpressPkg/ArmVExpressFastBootDxe/ArmVExpressFastBootDxe.inf 467 468 # FV Filesystem 469 MdeModulePkg/Universal/FvSimpleFileSystemDxe/FvSimpleFileSystemDxe.inf 470 471 # 472 # FDT installation 473 # 474 EmbeddedPkg/Drivers/FdtPlatformDxe/FdtPlatformDxe.inf 475 476 # Legacy Linux Loader 477 ArmPkg/Application/LinuxLoader/LinuxLoader.inf 478