## @file
#  Component description file for Hsti Silicon Driver
#
# Copyright (c) 2017, Intel Corporation. All rights reserved.<BR>
#
# SPDX-License-Identifier: BSD-2-Clause-Patent
#
##

[Defines]
  INF_VERSION                    = 0x00010005
  BASE_NAME                      = HstiSiliconDxe
  FILE_GUID                      = 60740CF3-D428-4500-80E6-04A5798241ED
  MODULE_TYPE                    = DXE_DRIVER
  VERSION_STRING                 = 1.0
  ENTRY_POINT                    = HstiSiliconDxeEntrypoint

################################################################################
#
# Sources Section - list of files that are required for the build to succeed.
#
################################################################################

[Sources]
  HstiSiliconDxe.c
  HardwareRootedBootIntegrity.c
  SignedFirmwareUpdate.c
  BootFirmwareMediaProtection.c
  MeasuredBootEnforcement.c
  IntegratedDeviceDmaProtection.c
  DebugModeDisabled.c
  SecureCpuConfiguration.c
  SecureSystemAgentConfiguration.c
  SecureMemoryMapConfiguration.c
  SecureIntegratedGraphicsConfiguration.c
  SecurePCHConfiguration.c
  MpServiceHelp.c

################################################################################
#
# Package Dependency Section - list of Package files that are required for
#                              this module.
#
################################################################################

[Packages]
  MdePkg/MdePkg.dec
  UefiCpuPkg/UefiCpuPkg.dec
  KabylakeSiliconPkg/SiPkg.dec
  SecurityPkg/SecurityPkg.dec

################################################################################
#
# Library Class Section - list of Library Classes that are required for
#                         this module.
#
################################################################################

[LibraryClasses]
  UefiDriverEntryPoint
  UefiLib
  BaseLib
  BaseMemoryLib
  MemoryAllocationLib
  DebugLib
  UefiBootServicesTableLib
  IoLib
  PciLib
  HstiLib
  PchCycleDecodingLib
  HobLib
  PchPcrLib
  MmPciLib
  PchGbeLib
  CpuPlatformLib
  PchP2sbLib

################################################################################
#
# Protocol C Name Section - list of Protocol and Protocol Notify C Names
#                           that this module uses or produces.
#
################################################################################

[Guids]
  gEfiEndOfDxeEventGroupGuid
  gSiMemoryPlatformDataGuid          ## CONSUMES

[Protocols]
  gEfiDxeSmmReadyToLockProtocolGuid  ## CONSUMES
  gHstiProtocolGuid                  ## PRODUCES
  gEfiMpServiceProtocolGuid          ## CONSUMES
  gDxeSiPolicyProtocolGuid           ## CONSUMES
  gHstiPublishCompleteProtocolGuid   ## PRODUCES
  
[FixedPcd]
  gSiPkgTokenSpaceGuid.PcdHstiIhvFeature1
  gSiPkgTokenSpaceGuid.PcdHstiIhvFeature2
  gSiPkgTokenSpaceGuid.PcdHstiIhvFeature3

[Depex]
  TRUE