## @file
# PI SMM Communication SMM driver that installs the SMM Communication ACPI Table.
#
# This SMM driver installs the SMM Communication ACPI Table defined in the UEFI spec
# which provides a mechanism that can be used in the OS present environment by
# non-firmware agents for inter-mode communication with SMM agents. It also saves
# SMM communication context for use by SMM Communication PEIM in the S3 boot mode.
#
# Copyright (c) 2010 - 2015, Intel Corporation. All rights reserved.<BR>
#
# This program and the accompanying materials
# are licensed and made available under the terms and conditions of the BSD License
# which accompanies this distribution.  The full text of the license may be found at
# http://opensource.org/licenses/bsd-license.php
#
# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#
##

[Defines]
  INF_VERSION                    = 0x00010005
  BASE_NAME                      = PiSmmCommunicationSmm
  MODULE_UNI_FILE                = PiSmmCommunicationSmm.uni
  FILE_GUID                      = E21F35A8-42FF-4050-82D6-93F7CDFA7073
  MODULE_TYPE                    = DXE_SMM_DRIVER
  VERSION_STRING                 = 1.0
  PI_SPECIFICATION_VERSION       = 0x0001000A
  ENTRY_POINT                    = PiSmmCommunicationSmmEntryPoint

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

[Sources]
  PiSmmCommunicationSmm.c
  PiSmmCommunicationPrivate.h

[Packages]
  MdePkg/MdePkg.dec
  MdeModulePkg/MdeModulePkg.dec

[LibraryClasses]
  UefiDriverEntryPoint
  UefiBootServicesTableLib
  UefiRuntimeServicesTableLib
  SmmServicesTableLib
  BaseLib
  BaseMemoryLib
  HobLib
  DebugLib
  SmmMemLib
  PcdLib

[Guids]
  gEfiAcpi20TableGuid                ## SOMETIMES_CONSUMES  ## SystemTable
  gEfiAcpi10TableGuid                ## SOMETIMES_CONSUMES  ## SystemTable
  gEfiAcpiTableGuid                  ## SOMETIMES_CONSUMES  ## SystemTable

[Ppis]
  gEfiPeiSmmCommunicationPpiGuid     ## UNDEFINED # SMM Configuration Table

[Protocols]
  gEfiSmmSwDispatch2ProtocolGuid     ## CONSUMES
  gEfiSmmCommunicationProtocolGuid   ## UNDEFINED # SMM Communication ACPI Table GUID
  gEfiAcpiTableProtocolGuid          ## CONSUMES

[Pcd]
  gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemId             ## CONSUMES
  gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemTableId        ## CONSUMES
  gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemRevision       ## CONSUMES
  gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultCreatorId         ## CONSUMES
  gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultCreatorRevision   ## CONSUMES

[Depex]
  gEfiSmmSwDispatch2ProtocolGuid AND
  gEfiAcpiTableProtocolGuid

[UserExtensions.TianoCore."ExtraFiles"]
  PiSmmCommunicationSmmExtra.uni