## @file
#  Platform PEI driver
#
#  This module provides platform specific function to detect boot mode.
# Copyright (c) 2006 - 2019 Intel Corporation. All rights reserved. <BR>
#
# SPDX-License-Identifier: BSD-2-Clause-Patent
#
##

[Defines]
  INF_VERSION                    = 0x00010005
  BASE_NAME                      = SimicsPei
  FILE_GUID                      = 05116218-f9f1-41f8-8d17-c2207006ffff
  MODULE_TYPE                    = PEIM
  VERSION_STRING                 = 1.0
  ENTRY_POINT                    = InitializePlatform

#
# The following information is for reference only and not required by the build tools.
#
#  VALID_ARCHITECTURES           = IA32 X64 EBC
#

[Sources]
  FeatureControl.c
  MemDetect.c
  Platform.c

[Packages]
  MdePkg/MdePkg.dec
  MdeModulePkg/MdeModulePkg.dec
  UefiCpuPkg/UefiCpuPkg.dec
  SimicsOpenBoardPkg/OpenBoardPkg.dec
  MinPlatformPkg/MinPlatformPkg.dec
  SimicsX58SktPkg/SktPkg.dec
  SimicsIch10Pkg/Ich10Pkg.dec
  BoardModulePkg/BoardModulePkg.dec

[Guids]
  gEfiMemoryTypeInformationGuid
  gEfiSmmSmramMemoryGuid              ## CONSUMES

[LibraryClasses]
  BaseLib
  DebugLib
  HobLib
  IoLib
  PciLib
  PeiResourcePublicationLib
  PeiServicesLib
  PeiServicesTablePointerLib
  PeimEntryPoint
  MtrrLib
  PcdLib
  CmosAccessLib

[Pcd]
  gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsPeiMemFvBase
  gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsPeiMemFvSize
  gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsDxeMemFvBase
  gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsDxeMemFvSize
  gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsLockBoxStorageBase
  gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsLockBoxStorageSize
  gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsSecPageTablesBase
  gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsSecPeiTempRamBase
  gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsSecPeiTempRamSize
  gEfiMdePkgTokenSpaceGuid.PcdGuidedExtractHandlerTableAddress
  gSimicsOpenBoardPkgTokenSpaceGuid.PcdGuidedExtractHandlerTableSize
  gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsDecompressionScratchEnd
  gSimicsOpenBoardPkgTokenSpaceGuid.PcdSimicsX58HostBridgePciDevId
  gSimicsOpenBoardPkgTokenSpaceGuid.PcdPciIoBase
  gSimicsOpenBoardPkgTokenSpaceGuid.PcdPciIoSize
  gSimicsOpenBoardPkgTokenSpaceGuid.PcdPciMmio32Base
  gSimicsOpenBoardPkgTokenSpaceGuid.PcdPciMmio32Size
  gSimicsOpenBoardPkgTokenSpaceGuid.PcdPciMmio64Base
  gSimicsOpenBoardPkgTokenSpaceGuid.PcdPciMmio64Size
  gSimicsX58PkgTokenSpaceGuid.PcdX58TsegMbytes
  gSimicsX58PkgTokenSpaceGuid.PcdSmmSmramRequire
  gEfiMdeModulePkgTokenSpaceGuid.PcdVariableStoreSize
  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize
  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize
  gEfiMdeModulePkgTokenSpaceGuid.PcdEmuVariableNvStoreReserved
  gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode
  gEfiMdeModulePkgTokenSpaceGuid.PcdUse1GPageTable
  gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiS3Enable
  gUefiCpuPkgTokenSpaceGuid.PcdCpuLocalApicBaseAddress
  gUefiCpuPkgTokenSpaceGuid.PcdCpuMaxLogicalProcessorNumber
  gUefiCpuPkgTokenSpaceGuid.PcdCpuApInitTimeOutInMicroSeconds
  gUefiCpuPkgTokenSpaceGuid.PcdCpuApStackSize
  gMinPlatformPkgTokenSpaceGuid.PcdFlashAreaBaseAddress  ## CONSUMES
  gMinPlatformPkgTokenSpaceGuid.PcdFlashAreaSize         ## CONSUMES
  gMinPlatformPkgTokenSpaceGuid.PcdIoApicId

[FixedPcd]
  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress


[Ppis]
  gEfiPeiMasterBootModePpiGuid
  gEfiPeiMpServicesPpiGuid

[Depex]
  TRUE

