#/** @file
#
#  Copyright (c) 2011 - 2014, ARM Ltd. All rights reserved.<BR>
#  Copyright (c) 2014 - 2016, AMD Inc. All rights reserved.<BR>
#
#  SPDX-License-Identifier: BSD-2-Clause-Patent
#**/
#/**
#  Derived from:
#   ArmPlatformPkg/MemoryInitPei/MemoryInitPeiLib.inf
#
#**/

[Defines]
  INF_VERSION                    = 0x00010005
  BASE_NAME                      = AmdStyxMemoryInitPeiLib
  FILE_GUID                      = 25466f78-a75a-4aae-be09-a68a347c3228
  MODULE_TYPE                    = BASE
  VERSION_STRING                 = 1.0
  LIBRARY_CLASS                  = MemoryInitPeiLib|SEC PEIM

[Sources]
  MemoryInitPeiLib.c

[Packages]
  ArmPkg/ArmPkg.dec
  ArmPlatformPkg/ArmPlatformPkg.dec
  MdePkg/MdePkg.dec
  MdeModulePkg/MdeModulePkg.dec
  EmbeddedPkg/EmbeddedPkg.dec
  Silicon/AMD/Styx/AmdModulePkg/AmdModulePkg.dec
  Silicon/AMD/Styx/AmdStyx.dec

[LibraryClasses]
  DebugLib
  HobLib
  ArmMmuLib
  ArmPlatformLib
  PcdLib

[Ppis]
  gAmdStyxPlatInitPpiGuid              ## CONSUMER

[Guids]
  gEfiMemoryTypeInformationGuid

[FeaturePcd]
  gEmbeddedTokenSpaceGuid.PcdPrePiProduceMemoryTypeInformationHob

[FixedPcd]
  gArmTokenSpaceGuid.PcdFdBaseAddress
  gArmTokenSpaceGuid.PcdFdSize

  gArmPlatformTokenSpaceGuid.PcdSystemMemoryUefiRegionSize

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

  gAmdStyxTokenSpaceGuid.PcdTrustedFWMemoryBase
  gAmdStyxTokenSpaceGuid.PcdTrustedFWMemorySize

  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize
  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingSize
  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize
  gAmdStyxTokenSpaceGuid.PcdFlashNvStorageOriginalBase

[Pcd]
  gArmTokenSpaceGuid.PcdSystemMemoryBase
  gArmTokenSpaceGuid.PcdSystemMemorySize

  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase64
  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase64
  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase64

[Depex]
  gAmdStyxPlatInitPpiGuid
