#
#  Copyright (c) 2018, ARM Limited. All rights reserved.
#
#  SPDX-License-Identifier: BSD-2-Clause-Patent
#

[Defines]
  INF_VERSION                    = 0x0001001A
  BASE_NAME                      = ArmSgiLib
  FILE_GUID                      = 1d0ee1e1-d791-4ecf-a43e-a9c76e674264
  MODULE_TYPE                    = BASE
  VERSION_STRING                 = 1.0
  LIBRARY_CLASS                  = ArmPlatformLib

[Packages]
  ArmPkg/ArmPkg.dec
  ArmPlatformPkg/ArmPlatformPkg.dec
  EmbeddedPkg/EmbeddedPkg.dec
  MdeModulePkg/MdeModulePkg.dec
  MdePkg/MdePkg.dec
  Platform/ARM/SgiPkg/SgiPlatform.dec
  StandaloneMmPkg/StandaloneMmPkg.dec

[LibraryClasses]
  ArmLib
  DebugLib
  HobLib
  IoLib
  MemoryAllocationLib
  SerialPortLib

[Sources.common]
  PlatformLibMem.c
  PlatformLib.c

[Sources.AARCH64]
  AArch64/Helper.S | GCC

[FixedPcd]
  gArmPlatformTokenSpaceGuid.PcdClusterCount
  gArmPlatformTokenSpaceGuid.PcdCoreCount

  gArmSgiTokenSpaceGuid.PcdDramBlock2Base
  gArmSgiTokenSpaceGuid.PcdDramBlock2Size

  gArmTokenSpaceGuid.PcdSystemMemoryBase
  gArmTokenSpaceGuid.PcdSystemMemorySize
  gArmTokenSpaceGuid.PcdGicDistributorBase
  gArmTokenSpaceGuid.PcdGicRedistributorsBase
  gArmTokenSpaceGuid.PcdFvBaseAddress
  gArmTokenSpaceGuid.PcdArmPrimaryCore
  gArmTokenSpaceGuid.PcdArmPrimaryCoreMask
  gArmTokenSpaceGuid.PcdPciBusMin
  gArmTokenSpaceGuid.PcdPciBusMax
  gArmTokenSpaceGuid.PcdPciMmio32Base
  gArmTokenSpaceGuid.PcdPciMmio32Size
  gArmTokenSpaceGuid.PcdPciMmio64Base
  gArmTokenSpaceGuid.PcdPciMmio64Size

  gArmTokenSpaceGuid.PcdMmBufferBase
  gArmTokenSpaceGuid.PcdMmBufferSize

  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress

[Guids]
  gArmSgiPlatformIdDescriptorGuid
  gEfiHobListGuid          ## CONSUMES  ## SystemTable
  gFdtTableGuid

[Ppis]
  gArmMpCoreInfoPpiGuid
  gNtFwConfigDtInfoPpiGuid
