mirror of
https://github.com/acidanthera/audk.git
synced 2025-07-31 01:24:12 +02:00
This changes added usage of MmUnblockMemoryLib to explicitly request allocated NVS region to be accessible from MM environment. It will bring in compatibility with architectures that supports full memory blockage inside MM. Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Jian J Wang <jian.j.wang@intel.com> Cc: Qi Zhang <qi1.zhang@intel.com> Cc: Rahul Kumar <rahul1.kumar@intel.com> Signed-off-by: Kun Qin <kun.q@outlook.com> Reviewed-by: Jiewen Yao <Jiewen.yao@intel.com> Message-Id: <MWHPR06MB31026F3F8C3FAA39D74CE4BAF3969@MWHPR06MB3102.namprd06.prod.outlook.com>
95 lines
3.9 KiB
INI
95 lines
3.9 KiB
INI
## @file
|
|
# Provides ACPI methods for TPM 2.0 support
|
|
#
|
|
# Spec Compliance Info:
|
|
# "TCG ACPI Specification Version 1.2 Revision 8"
|
|
# "Physical Presence Interface Specification Version 1.30 Revision 00.52"
|
|
# along with
|
|
# "Errata Version 0.4 for TCG PC Client Platform Physical Presence Interface Specification"
|
|
# "Platform Reset Attack Mitigation Specification Version 1.00"
|
|
# TPM2.0 ACPI device object
|
|
# "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"
|
|
#
|
|
# This driver implements TPM 2.0 definition block in ACPI table and
|
|
# populates registered SMI callback functions for Tcg2 physical presence
|
|
# and MemoryClear to handle the requests for ACPI method. It needs to be
|
|
# used together with Tcg2 MM drivers to exchange information on registered
|
|
# SwSmiValue and allocated NVS region address.
|
|
#
|
|
# 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.
|
|
#
|
|
# Copyright (c) 2015 - 2019, Intel Corporation. All rights reserved.<BR>
|
|
# Copyright (c) Microsoft Corporation.<BR>
|
|
# SPDX-License-Identifier: BSD-2-Clause-Patent
|
|
#
|
|
##
|
|
|
|
[Defines]
|
|
INF_VERSION = 0x00010005
|
|
BASE_NAME = Tcg2Acpi
|
|
FILE_GUID = 0D4BBF18-C2CC-4C23-BD63-BFDAD4C710D0
|
|
MODULE_TYPE = DXE_DRIVER
|
|
PI_SPECIFICATION_VERSION = 0x0001000A
|
|
VERSION_STRING = 1.0
|
|
ENTRY_POINT = InitializeTcgAcpi
|
|
|
|
[Sources]
|
|
Tcg2Acpi.c
|
|
Tpm.asl
|
|
|
|
[Packages]
|
|
MdePkg/MdePkg.dec
|
|
MdeModulePkg/MdeModulePkg.dec
|
|
SecurityPkg/SecurityPkg.dec
|
|
|
|
[LibraryClasses]
|
|
BaseLib
|
|
BaseMemoryLib
|
|
UefiDriverEntryPoint
|
|
UefiBootServicesTableLib
|
|
DebugLib
|
|
DxeServicesLib
|
|
TpmMeasurementLib
|
|
Tpm2CommandLib
|
|
Tcg2PhysicalPresenceLib
|
|
PcdLib
|
|
MmUnblockMemoryLib
|
|
|
|
[Guids]
|
|
gEfiTpmDeviceInstanceTpm20DtpmGuid ## PRODUCES ## GUID # TPM device identifier
|
|
gTpmNvsMmGuid ## CONSUMES
|
|
gEdkiiPiSmmCommunicationRegionTableGuid ## CONSUMES
|
|
|
|
[Protocols]
|
|
gEfiAcpiTableProtocolGuid ## CONSUMES
|
|
gEfiMmCommunicationProtocolGuid ## CONSUMES
|
|
|
|
[FixedPcd]
|
|
gEfiSecurityPkgTokenSpaceGuid.PcdSmiCommandIoPort ## 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
|
|
gEfiSecurityPkgTokenSpaceGuid.PcdTpmBaseAddress ## CONSUMES
|
|
gEfiSecurityPkgTokenSpaceGuid.PcdTcgPhysicalPresenceInterfaceVer ## CONSUMES
|
|
gEfiSecurityPkgTokenSpaceGuid.PcdTpm2AcpiTableRev ## CONSUMES
|
|
gEfiSecurityPkgTokenSpaceGuid.PcdTpmPlatformClass ## SOMETIMES_CONSUMES
|
|
gEfiSecurityPkgTokenSpaceGuid.PcdTpm2CurrentIrqNum ## CONSUMES
|
|
gEfiSecurityPkgTokenSpaceGuid.PcdTpm2PossibleIrqNumBuf ## CONSUMES
|
|
gEfiSecurityPkgTokenSpaceGuid.PcdActiveTpmInterfaceType ## CONSUMES
|
|
gEfiSecurityPkgTokenSpaceGuid.PcdTpm2AcpiTableLaml ## CONSUMES
|
|
gEfiSecurityPkgTokenSpaceGuid.PcdTpm2AcpiTableLasa ## CONSUMES
|
|
|
|
[Depex]
|
|
gEfiAcpiTableProtocolGuid AND
|
|
gTcg2MmSwSmiRegisteredGuid AND
|
|
gEfiTcg2ProtocolGuid
|