]> git.proxmox.com Git - mirror_edk2.git/blob - SecurityPkg/Tcg/Tcg2Smm/Tcg2Smm.inf
c709743b4772884f7ce80db74b72f5f7ab9b6818
[mirror_edk2.git] / SecurityPkg / Tcg / Tcg2Smm / Tcg2Smm.inf
1 ## @file
2 # Provides ACPI methods for TPM 2.0 support
3 #
4 # Spec Compliance Info:
5 # "TCG ACPI Specification Level 00 Revision 00.37"
6 # "Physical Presence Interface Specification Version 1.30 Revision 00.52"
7 # "Platform Reset Attack Mitigation Specification Version 1.00"
8 # TPM2.0 ACPI device object
9 # "TCG PC Client Platform Firmware Profile Specification for TPM Family 2.0 Level 00 Revision 00.21"
10 #
11 # This driver implements TPM 2.0 definition block in ACPI table and
12 # registers SMI callback functions for Tcg2 physical presence and
13 # MemoryClear to handle the requests from ACPI method.
14 #
15 # Caution: This module requires additional review when modified.
16 # This driver will have external input - variable and ACPINvs data in SMM mode.
17 # This external input must be validated carefully to avoid security issue.
18 #
19 # Copyright (c) 2015 - 2017, Intel Corporation. All rights reserved.<BR>
20 # This program and the accompanying materials
21 # are licensed and made available under the terms and conditions of the BSD License
22 # which accompanies this distribution. The full text of the license may be found at
23 # http://opensource.org/licenses/bsd-license.php
24 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
25 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
26 #
27 ##
28
29 [Defines]
30 INF_VERSION = 0x00010005
31 BASE_NAME = Tcg2Smm
32 MODULE_UNI_FILE = Tcg2Smm.uni
33 FILE_GUID = 44A20657-10B8-4049-A148-ACD8812AF257
34 MODULE_TYPE = DXE_SMM_DRIVER
35 PI_SPECIFICATION_VERSION = 0x0001000A
36 VERSION_STRING = 1.0
37 ENTRY_POINT = InitializeTcgSmm
38
39 [Sources]
40 Tcg2Smm.h
41 Tcg2Smm.c
42 Tpm.asl
43
44 [Packages]
45 MdePkg/MdePkg.dec
46 MdeModulePkg/MdeModulePkg.dec
47 SecurityPkg/SecurityPkg.dec
48
49 [LibraryClasses]
50 BaseLib
51 BaseMemoryLib
52 UefiDriverEntryPoint
53 SmmServicesTableLib
54 UefiBootServicesTableLib
55 DebugLib
56 DxeServicesLib
57 TpmMeasurementLib
58 Tpm2CommandLib
59 Tcg2PhysicalPresenceLib
60 IoLib
61
62 [Guids]
63 ## SOMETIMES_PRODUCES ## Variable:L"MemoryOverwriteRequestControl"
64 ## SOMETIMES_CONSUMES ## Variable:L"MemoryOverwriteRequestControl"
65 gEfiMemoryOverwriteControlDataGuid
66
67 gEfiTpmDeviceInstanceTpm20DtpmGuid ## PRODUCES ## GUID # TPM device identifier
68
69 [Protocols]
70 gEfiSmmSwDispatch2ProtocolGuid ## CONSUMES
71 gEfiSmmVariableProtocolGuid ## CONSUMES
72 gEfiAcpiTableProtocolGuid ## CONSUMES
73
74 [Pcd]
75 gEfiSecurityPkgTokenSpaceGuid.PcdTpmInstanceGuid ## CONSUMES
76 gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemId ## SOMETIMES_CONSUMES
77 gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemTableId ## SOMETIMES_CONSUMES
78 gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemRevision ## SOMETIMES_CONSUMES
79 gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultCreatorId ## SOMETIMES_CONSUMES
80 gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultCreatorRevision ## SOMETIMES_CONSUMES
81 gEfiSecurityPkgTokenSpaceGuid.PcdTpmBaseAddress ## CONSUMES
82 gEfiSecurityPkgTokenSpaceGuid.PcdTcgPhysicalPresenceInterfaceVer ## CONSUMES
83 gEfiSecurityPkgTokenSpaceGuid.PcdTpm2AcpiTableRev ## CONSUMES
84 gEfiSecurityPkgTokenSpaceGuid.PcdTpmPlatformClass ## SOMETIMES_CONSUMES
85
86 [Depex]
87 gEfiAcpiTableProtocolGuid AND
88 gEfiSmmSwDispatch2ProtocolGuid AND
89 gEfiSmmVariableProtocolGuid AND
90 gEfiTcg2ProtocolGuid
91
92 [UserExtensions.TianoCore."ExtraFiles"]
93 Tcg2SmmExtra.uni