#/** @file
#
#  (C) Copyright 2015 Hewlett-Packard Development Company, L.P.<BR>
#  Copyright (c) 2011-2014, ARM Ltd. All rights reserved.<BR>
#
#  This program and the accompanying materials
#  are licensed and made available under the terms and conditions of the BSD License
#  which accompanies this distribution.  The full text of the license may be found at
#  http://opensource.org/licenses/bsd-license.php
#
#  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
#  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#
#**/

[Defines]
  INF_VERSION                    = 0x00010005
  BASE_NAME                      = ArmPlatformPrePiMPCore
  FILE_GUID                      = d959e387-7b91-452c-90e0-a1dbac90ddb8
  MODULE_TYPE                    = SEC
  VERSION_STRING                 = 1.0

[Sources]
  PrePi.c
  MainMPCore.c

[Sources.ARM]
  Arm/ArchPrePi.c
  Arm/ModuleEntryPoint.S   | GCC
  Arm/ModuleEntryPoint.asm | RVCT

[Sources.AArch64]
  AArch64/ArchPrePi.c
  AArch64/ModuleEntryPoint.S

[Packages]
  MdePkg/MdePkg.dec
  MdeModulePkg/MdeModulePkg.dec
  EmbeddedPkg/EmbeddedPkg.dec
  ArmPkg/ArmPkg.dec
  ArmPlatformPkg/ArmPlatformPkg.dec
  IntelFrameworkModulePkg/IntelFrameworkModulePkg.dec

[LibraryClasses]
  BaseLib
  DebugLib
  DebugAgentLib
  ArmLib
  ArmGicLib
  IoLib
  TimerLib
  SerialPortLib
  ExtractGuidedSectionLib
  LzmaDecompressLib
  PeCoffGetEntryPointLib
  DebugAgentLib
  PrePiLib
  ArmPlatformLib
  ArmPlatformStackLib
  MemoryAllocationLib
  HobLib
  PrePiHobListPointerLib
  PlatformPeiLib
  MemoryInitPeiLib

[Ppis]
  gArmMpCoreInfoPpiGuid

[Guids]
  gArmMpCoreInfoGuid

[FeaturePcd]
  gEmbeddedTokenSpaceGuid.PcdPrePiProduceMemoryTypeInformationHob
  gArmPlatformTokenSpaceGuid.PcdSendSgiToBringUpSecondaryCores

[Pcd]
  gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVersionString

[FixedPcd]
  gArmTokenSpaceGuid.PcdVFPEnabled

  gArmTokenSpaceGuid.PcdFdBaseAddress
  gArmTokenSpaceGuid.PcdFdSize

  gArmTokenSpaceGuid.PcdFvBaseAddress
  gArmTokenSpaceGuid.PcdFvSize

  gArmPlatformTokenSpaceGuid.PcdCPUCorePrimaryStackSize
  gArmPlatformTokenSpaceGuid.PcdCPUCoreSecondaryStackSize

  gArmTokenSpaceGuid.PcdGicDistributorBase
  gArmTokenSpaceGuid.PcdGicInterruptInterfaceBase
  gArmTokenSpaceGuid.PcdGicSgiIntId

  gArmTokenSpaceGuid.PcdSystemMemoryBase
  gArmTokenSpaceGuid.PcdSystemMemorySize
  gArmPlatformTokenSpaceGuid.PcdSystemMemoryUefiRegionSize

  gArmPlatformTokenSpaceGuid.PcdCoreCount

  gEmbeddedTokenSpaceGuid.PcdPrePiCpuMemorySize
  gEmbeddedTokenSpaceGuid.PcdPrePiCpuIoSize

  gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIReclaimMemory
  gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIMemoryNVS
  gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiReservedMemoryType
  gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesData
  gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesCode
  gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesCode
  gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesData
  gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderCode
  gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderData