2015-08-13 10:24:17 +02:00
|
|
|
## @file
|
2017-05-11 07:08:30 +02:00
|
|
|
# Provides ACPI methods for TPM 2.0 support
|
|
|
|
#
|
|
|
|
# Spec Compliance Info:
|
2019-01-25 16:03:37 +01:00
|
|
|
# "TCG ACPI Specification Version 1.2 Revision 8"
|
2017-05-11 07:08:30 +02:00
|
|
|
# "Physical Presence Interface Specification Version 1.30 Revision 00.52"
|
2019-01-25 16:03:37 +01:00
|
|
|
# along with
|
|
|
|
# "Errata Version 0.4 for TCG PC Client Platform Physical Presence Interface Specification"
|
2017-05-11 07:08:30 +02:00
|
|
|
# "Platform Reset Attack Mitigation Specification Version 1.00"
|
|
|
|
# TPM2.0 ACPI device object
|
2018-11-20 02:47:19 +01:00
|
|
|
# "TCG PC Client Platform Firmware Profile Specification for TPM Family 2.0 Level 00 Revision 1.03 v51"
|
|
|
|
# along with
|
|
|
|
# "Errata for PC Client Specific Platform Firmware Profile Specification Version 1.0 Revision 1.03"
|
2015-08-13 10:24:17 +02:00
|
|
|
#
|
2018-06-27 15:13:09 +02:00
|
|
|
# This driver implements TPM 2.0 definition block in ACPI table and
|
|
|
|
# registers SMI callback functions for Tcg2 physical presence and
|
2015-08-13 10:24:17 +02:00
|
|
|
# MemoryClear to handle the requests from ACPI method.
|
|
|
|
#
|
|
|
|
# Caution: This module requires additional review when modified.
|
|
|
|
# This driver will have external input - variable and ACPINvs data in SMM mode.
|
|
|
|
# This external input must be validated carefully to avoid security issue.
|
|
|
|
#
|
2019-01-25 16:03:37 +01:00
|
|
|
# Copyright (c) 2015 - 2019, Intel Corporation. All rights reserved.<BR>
|
2019-04-04 01:06:56 +02:00
|
|
|
# SPDX-License-Identifier: BSD-2-Clause-Patent
|
2015-08-13 10:24:17 +02:00
|
|
|
#
|
|
|
|
##
|
|
|
|
|
|
|
|
[Defines]
|
|
|
|
INF_VERSION = 0x00010005
|
|
|
|
BASE_NAME = Tcg2Smm
|
|
|
|
MODULE_UNI_FILE = Tcg2Smm.uni
|
|
|
|
FILE_GUID = 44A20657-10B8-4049-A148-ACD8812AF257
|
|
|
|
MODULE_TYPE = DXE_SMM_DRIVER
|
|
|
|
PI_SPECIFICATION_VERSION = 0x0001000A
|
|
|
|
VERSION_STRING = 1.0
|
|
|
|
ENTRY_POINT = InitializeTcgSmm
|
|
|
|
|
|
|
|
[Sources]
|
|
|
|
Tcg2Smm.h
|
|
|
|
Tcg2Smm.c
|
|
|
|
Tpm.asl
|
|
|
|
|
|
|
|
[Packages]
|
|
|
|
MdePkg/MdePkg.dec
|
|
|
|
MdeModulePkg/MdeModulePkg.dec
|
|
|
|
SecurityPkg/SecurityPkg.dec
|
|
|
|
|
|
|
|
[LibraryClasses]
|
|
|
|
BaseLib
|
|
|
|
BaseMemoryLib
|
|
|
|
UefiDriverEntryPoint
|
|
|
|
SmmServicesTableLib
|
|
|
|
UefiBootServicesTableLib
|
|
|
|
DebugLib
|
|
|
|
DxeServicesLib
|
|
|
|
TpmMeasurementLib
|
2016-12-21 07:31:47 +01:00
|
|
|
Tpm2CommandLib
|
2015-08-13 10:24:17 +02:00
|
|
|
Tcg2PhysicalPresenceLib
|
2018-01-08 03:13:54 +01:00
|
|
|
PcdLib
|
2015-08-13 10:24:17 +02:00
|
|
|
|
|
|
|
[Guids]
|
|
|
|
## SOMETIMES_PRODUCES ## Variable:L"MemoryOverwriteRequestControl"
|
2018-06-27 15:13:09 +02:00
|
|
|
## SOMETIMES_CONSUMES ## Variable:L"MemoryOverwriteRequestControl"
|
2015-08-13 10:24:17 +02:00
|
|
|
gEfiMemoryOverwriteControlDataGuid
|
2018-06-27 15:13:09 +02:00
|
|
|
|
2015-08-13 10:24:17 +02:00
|
|
|
gEfiTpmDeviceInstanceTpm20DtpmGuid ## PRODUCES ## GUID # TPM device identifier
|
|
|
|
|
|
|
|
[Protocols]
|
|
|
|
gEfiSmmSwDispatch2ProtocolGuid ## CONSUMES
|
|
|
|
gEfiSmmVariableProtocolGuid ## CONSUMES
|
|
|
|
gEfiAcpiTableProtocolGuid ## CONSUMES
|
|
|
|
|
|
|
|
[Pcd]
|
|
|
|
gEfiSecurityPkgTokenSpaceGuid.PcdTpmInstanceGuid ## CONSUMES
|
|
|
|
gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemId ## SOMETIMES_CONSUMES
|
|
|
|
gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemTableId ## SOMETIMES_CONSUMES
|
|
|
|
gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemRevision ## SOMETIMES_CONSUMES
|
|
|
|
gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultCreatorId ## SOMETIMES_CONSUMES
|
|
|
|
gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultCreatorRevision ## SOMETIMES_CONSUMES
|
2016-01-26 02:30:17 +01:00
|
|
|
gEfiSecurityPkgTokenSpaceGuid.PcdTpmBaseAddress ## CONSUMES
|
2016-06-08 09:35:16 +02:00
|
|
|
gEfiSecurityPkgTokenSpaceGuid.PcdTcgPhysicalPresenceInterfaceVer ## CONSUMES
|
2016-12-23 09:55:32 +01:00
|
|
|
gEfiSecurityPkgTokenSpaceGuid.PcdTpm2AcpiTableRev ## CONSUMES
|
2017-01-12 03:42:29 +01:00
|
|
|
gEfiSecurityPkgTokenSpaceGuid.PcdTpmPlatformClass ## SOMETIMES_CONSUMES
|
2018-01-08 03:13:54 +01:00
|
|
|
gEfiSecurityPkgTokenSpaceGuid.PcdTpm2CurrentIrqNum ## CONSUMES
|
|
|
|
gEfiSecurityPkgTokenSpaceGuid.PcdTpm2PossibleIrqNumBuf ## CONSUMES
|
2018-05-08 08:51:57 +02:00
|
|
|
gEfiSecurityPkgTokenSpaceGuid.PcdActiveTpmInterfaceType ## CONSUMES
|
2019-09-28 13:56:08 +02:00
|
|
|
gEfiSecurityPkgTokenSpaceGuid.PcdTpm2AcpiTableLaml ## CONSUMES
|
|
|
|
gEfiSecurityPkgTokenSpaceGuid.PcdTpm2AcpiTableLasa ## CONSUMES
|
2015-08-13 10:24:17 +02:00
|
|
|
|
|
|
|
[Depex]
|
|
|
|
gEfiAcpiTableProtocolGuid AND
|
|
|
|
gEfiSmmSwDispatch2ProtocolGuid AND
|
2017-02-20 07:13:42 +01:00
|
|
|
gEfiSmmVariableProtocolGuid AND
|
|
|
|
gEfiTcg2ProtocolGuid
|
2015-08-13 10:24:17 +02:00
|
|
|
|
|
|
|
[UserExtensions.TianoCore."ExtraFiles"]
|
|
|
|
Tcg2SmmExtra.uni
|