### @file
# Thunderbolt SMM initialization module.
#
# Copyright (c) 2019, Intel Corporation. All rights reserved.<BR>
#
# SPDX-License-Identifier: BSD-2-Clause-Patent
#
###

[Defines]
  INF_VERSION                    = 0x00010017
  BASE_NAME                      = TbtSmm
  FILE_GUID                      = 5BDCD685-D80A-42E6-9867-A84CCE7F828E
  VERSION_STRING                 = 1.0
  MODULE_TYPE                    = DXE_SMM_DRIVER
  PI_SPECIFICATION_VERSION       = 1.10
  ENTRY_POINT                    = TbtSmmEntryPoint

[LibraryClasses]
  UefiDriverEntryPoint
  BaseLib
  BaseMemoryLib
  DebugLib
  UefiRuntimeServicesTableLib
  UefiBootServicesTableLib
  IoLib
  PciExpressLib
  HobLib
  ReportStatusCodeLib
  PciSegmentLib
  UefiLib
  SmmServicesTableLib
  GpioLib
  PchInfoLib
  TbtCommonLib
  PchPmcLib

[Packages]
  MdePkg/MdePkg.dec
  MdeModulePkg/MdeModulePkg.dec
  MinPlatformPkg/MinPlatformPkg.dec
  ClevoOpenBoardPkg/OpenBoardPkg.dec
  KabylakeSiliconPkg/SiPkg.dec

[Pcd]
  gBoardModuleTokenSpaceGuid.PcdSwSmiDTbtEnumerate ## CONSUMES
  gSiPkgTokenSpaceGuid.PcdSiPciExpressRegionLength      ## CONSUMES

[FixedPcd]
  gSiPkgTokenSpaceGuid.PcdAcpiBaseAddress       ## CONSUMES

[Sources]
  TbtSmiHandler.h
  TbtSmiHandler.c
  TbtSmm.c

[Protocols]
  gTbtNvsAreaProtocolGuid                       ## CONSUMES
  gEfiSmmSxDispatch2ProtocolGuid                ## CONSUMES
  gEfiSmmSwDispatch2ProtocolGuid                ## CONSUMES
  gEfiSmmVariableProtocolGuid                   ## CONSUMES
  gDxeTbtPolicyProtocolGuid

[Guids]
  gTbtInfoHobGuid                               ## CONSUMES

[Pcd]
  gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress  ## CONSUMES

[Depex]
  gEfiSmmBase2ProtocolGuid            AND
  gEfiSmmSxDispatch2ProtocolGuid      AND
  gEfiSmmSwDispatch2ProtocolGuid      AND
  gEfiGlobalNvsAreaProtocolGuid       AND
  gEfiVariableWriteArchProtocolGuid   AND
  gEfiVariableArchProtocolGuid        AND
  gEfiSmmVariableProtocolGuid
