#\r
-# Copyright (c) 2011-2013, ARM Limited. All rights reserved.\r
-# \r
-# This program and the accompanying materials \r
-# are licensed and made available under the terms and conditions of the BSD License \r
-# which accompanies this distribution. The full text of the license may be found at \r
-# http://opensource.org/licenses/bsd-license.php \r
+# Copyright (c) 2011-2015, ARM Limited. All rights reserved.\r
#\r
-# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
-# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
+# This program and the accompanying materials\r
+# are licensed and made available under the terms and conditions of the BSD License\r
+# which accompanies this distribution. The full text of the license may be found at\r
+# http://opensource.org/licenses/bsd-license.php\r
+#\r
+# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
#\r
#\r
################################################################################\r
################################################################################\r
[Defines]\r
PLATFORM_NAME = ArmPlatform\r
- PLATFORM_GUID = 4fe82b83-9315-4ff3-8cc0-ab77ca93cb7f \r
+ PLATFORM_GUID = 4fe82b83-9315-4ff3-8cc0-ab77ca93cb7f\r
PLATFORM_VERSION = 0.1\r
DSC_SPECIFICATION = 0x00010005\r
OUTPUT_DIRECTORY = Build/$(PLATFORM_NAME)\r
# UncachedMemoryAllocationLib|ArmPkg/Library/DebugUncachedMemoryAllocationLib/DebugUncachedMemoryAllocationLib.inf\r
!endif\r
DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf\r
- \r
+\r
BaseLib|MdePkg/Library/BaseLib/BaseLib.inf\r
SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf\r
PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf\r
UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf\r
UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf\r
HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf\r
- UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf \r
+ UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf\r
\r
UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf\r
\r
# Assume everything is fixed at build\r
#\r
PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf\r
- \r
+\r
# 1/123 faster than Stm or Vstm version\r
#BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf\r
BaseMemoryLib|ArmPkg/Library/BaseMemoryLibStm/BaseMemoryLibStm.inf\r
EfiResetSystemLib|EmbeddedPkg/Library/TemplateResetSystemLib/TemplateResetSystemLib.inf\r
RealTimeClockLib|EmbeddedPkg/Library/TemplateRealTimeClockLib/TemplateRealTimeClockLib.inf\r
\r
- # EBL Related Libraries \r
+ # Networking Requirements for ArmPlatformPkg/Bds\r
+ NetLib|MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf\r
+\r
+ # EBL Related Libraries\r
EblCmdLib|ArmPlatformPkg/Library/EblCmdLib/EblCmdLib.inf\r
EfiFileLib|EmbeddedPkg/Library/EfiFileLib/EfiFileLib.inf\r
EblAddExternalCommandLib|EmbeddedPkg/Library/EblAddExternalCommandLib/EblAddExternalCommandLib.inf\r
EblNetworkLib|EmbeddedPkg/Library/EblNetworkLib/EblNetworkLib.inf\r
- \r
+\r
#\r
- # Uncomment (and comment out the next line) For RealView Debugger. The Standard IO window \r
+ # Uncomment (and comment out the next line) For RealView Debugger. The Standard IO window\r
# in the debugger will show load and unload commands for symbols. You can cut and paste this\r
# into the command window to load symbols. We should be able to use a script to do this, but\r
# the version of RVD I have does not support scripts accessing system memory.\r
#PeCoffExtraActionLib|ArmPkg/Library/RvdPeCoffExtraActionLib/RvdPeCoffExtraActionLib.inf\r
PeCoffExtraActionLib|ArmPkg/Library/DebugPeCoffExtraActionLib/DebugPeCoffExtraActionLib.inf\r
#PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf\r
- \r
+\r
DebugAgentLib|MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf\r
DebugAgentTimerLib|EmbeddedPkg/Library/DebugAgentTimerLibNull/DebugAgentTimerLibNull.inf\r
\r
- SemihostLib|ArmPkg/Library/SemihostLib/SemihostLib.inf \r
+ SemihostLib|ArmPkg/Library/SemihostLib/SemihostLib.inf\r
\r
# BDS Libraries\r
BdsLib|ArmPkg/Library/BdsLib/BdsLib.inf\r
[LibraryClasses.common.SEC]\r
ArmPlatformGlobalVariableLib|ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/PrePi/PrePiArmPlatformGlobalVariableLib.inf\r
\r
- ArmPlatformSecExtraActionLib|ArmPlatformPkg/Library/DebugSecExtraActionLib/DebugSecExtraActionLib.inf \r
+ ArmPlatformSecExtraActionLib|ArmPlatformPkg/Library/DebugSecExtraActionLib/DebugSecExtraActionLib.inf\r
DebugAgentLib|ArmPkg/Library/DebugAgentSymbolsBaseLib/DebugAgentSymbolsBaseLib.inf\r
DefaultExceptionHandlerLib|ArmPkg/Library/DefaultExceptionHandlerLib/DefaultExceptionHandlerLibBase.inf\r
- \r
+\r
PrePiLib|EmbeddedPkg/Library/PrePiLib/PrePiLib.inf\r
ExtractGuidedSectionLib|EmbeddedPkg/Library/PrePiExtractGuidedSectionLib/PrePiExtractGuidedSectionLib.inf\r
- LzmaDecompressLib|IntelFrameworkModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf\r
+ LzmaDecompressLib|MdeModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf\r
MemoryAllocationLib|EmbeddedPkg/Library/PrePiMemoryAllocationLib/PrePiMemoryAllocationLib.inf\r
HobLib|EmbeddedPkg/Library/PrePiHobLib/PrePiHobLib.inf\r
PrePiHobListPointerLib|ArmPlatformPkg/Library/PrePiHobListPointerLib/PrePiHobListPointerLib.inf\r
PerformanceLib|MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib.inf\r
PlatformPeiLib|ArmPlatformPkg/PlatformPei/PlatformPeiLib.inf\r
+\r
+[LibraryClasses.common.SEC, LibraryClasses.common.PEIM]\r
MemoryInitPeiLib|ArmPlatformPkg/MemoryInitPei/MemoryInitPeiLib.inf\r
\r
[LibraryClasses.common.DXE_CORE]\r
ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf\r
CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf\r
\r
-[LibraryClasses.ARM]\r
+[LibraryClasses.ARM, LibraryClasses.AARCH64]\r
#\r
# It is not possible to prevent the ARM compiler for generic intrinsic functions.\r
# This library provides the instrinsic functions generate by a given compiler.\r
#\r
NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf\r
\r
+ # Add support for GCC stack protector\r
+ NULL|MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf\r
+\r
[BuildOptions]\r
XCODE:*_*_ARM_PLATFORM_FLAGS == -arch armv7\r
\r
gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnosticsDisable|TRUE\r
gEfiMdePkgTokenSpaceGuid.PcdComponentName2Disable|TRUE\r
gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnostics2Disable|TRUE\r
- \r
+\r
#\r
# Control what commands are supported from the UI\r
# Turn these on and off to add features or save size\r
- # \r
+ #\r
gEmbeddedTokenSpaceGuid.PcdEmbeddedMacBoot|TRUE\r
gEmbeddedTokenSpaceGuid.PcdEmbeddedDirCmd|TRUE\r
gEmbeddedTokenSpaceGuid.PcdEmbeddedHobCmd|TRUE\r
gEmbeddedTokenSpaceGuid.PcdEmbeddedScriptCmd|FALSE\r
\r
gEmbeddedTokenSpaceGuid.PcdCacheEnable|TRUE\r
- \r
+\r
# Use the Vector Table location in CpuDxe. We will not copy the Vector Table at PcdCpuVectorBaseAddress\r
gArmTokenSpaceGuid.PcdRelocateVectorTable|FALSE\r
- \r
+\r
gEmbeddedTokenSpaceGuid.PcdPrePiProduceMemoryTypeInformationHob|TRUE\r
- \r
+\r
gEfiMdeModulePkgTokenSpaceGuid.PcdTurnOffUsbLegacySupport|TRUE\r
\r
[PcdsFixedAtBuild.common]\r
gArmPlatformTokenSpaceGuid.PcdFirmwareVendor|"ARM Platform"\r
- \r
+\r
gEmbeddedTokenSpaceGuid.PcdEmbeddedPrompt|"ArmPlatform"\r
- gEmbeddedTokenSpaceGuid.PcdPrePiCpuMemorySize|32\r
- gEmbeddedTokenSpaceGuid.PcdPrePiCpuIoSize|0\r
gEfiMdePkgTokenSpaceGuid.PcdMaximumUnicodeStringLength|1000000\r
gEfiMdePkgTokenSpaceGuid.PcdMaximumAsciiStringLength|1000000\r
gEfiMdePkgTokenSpaceGuid.PcdMaximumLinkedListLength|1000000\r
gEmbeddedTokenSpaceGuid.PcdEmbeddedAutomaticBootCommand|""\r
gEmbeddedTokenSpaceGuid.PcdEmbeddedDefaultTextColor|0x07\r
gEmbeddedTokenSpaceGuid.PcdEmbeddedMemVariableStoreSize|0x10000\r
- \r
+\r
#\r
# Optional feature to help prevent EFI memory map fragments\r
# Turned on and off via: PcdPrePiProduceMemoryTypeInformationHob\r
- # Values are in EFI Pages (4K). DXE Core will make sure that \r
- # at least this much of each type of memory can be allocated \r
+ # Values are in EFI Pages (4K). DXE Core will make sure that\r
+ # at least this much of each type of memory can be allocated\r
# from a single memory range. This way you only end up with\r
# maximum of two fragements for each type in the memory map\r
# (the memory used, and the free memory that was prereserved\r
gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesData|20000\r
gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderCode|20\r
gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderData|0\r
- \r
+\r
#\r
# ARM Pcds\r
#\r
gArmTokenSpaceGuid.PcdArmUncachedMemoryMask|0x0000000000000000\r
- \r
+\r
gArmTokenSpaceGuid.PcdSystemMemoryBase|0\r
gArmTokenSpaceGuid.PcdSystemMemorySize|0\r
\r
#\r
################################################################################\r
[Components.common]\r
- \r
+\r
#\r
# PEI Phase modules\r
#\r
#\r
# Architectural Protocols\r
#\r
- ArmPkg/Drivers/CpuDxe/CpuDxe.inf \r
+ ArmPkg/Drivers/CpuDxe/CpuDxe.inf\r
MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf\r
MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf\r
MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf\r
MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf\r
MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariableRuntimeDxe.inf\r
- EmbeddedPkg/EmbeddedMonotonicCounter/EmbeddedMonotonicCounter.inf \r
- \r
+ EmbeddedPkg/EmbeddedMonotonicCounter/EmbeddedMonotonicCounter.inf\r
+\r
EmbeddedPkg/ResetRuntimeDxe/ResetRuntimeDxe.inf\r
EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf\r
EmbeddedPkg/MetronomeDxe/MetronomeDxe.inf\r
- \r
+\r
# Simple TextIn/TextOut for UEFI Terminal\r
EmbeddedPkg/SimpleTextInOutSerial/SimpleTextInOutSerial.inf\r
- \r
+\r
#\r
#\r
# Semi-hosting filesystem\r
#\r
ArmPkg/Filesystem/SemihostFs/SemihostFs.inf\r
- \r
+\r
#\r
# FAT filesystem + GPT/MBR partitioning\r
#\r
MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf\r
MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf\r
MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf\r
- \r
+\r
#\r
# Application\r
- # \r
+ #\r
EmbeddedPkg/Ebl/Ebl.inf\r
\r
#\r
#\r
MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf\r
ArmPlatformPkg/Bds/Bds.inf\r
- \r
+\r