Home | History | Annotate | Download | only in Tcg2Smm
      1 ## @file

      2 #  Provides ACPI metholds for TPM 2.0 support

      3 #

      4 #  This driver implements TPM 2.0 definition block in ACPI table and 

      5 #  registers SMI callback functions for Tcg2 physical presence and 

      6 #  MemoryClear to handle the requests from ACPI method.

      7 #

      8 #  Caution: This module requires additional review when modified.

      9 #  This driver will have external input - variable and ACPINvs data in SMM mode.

     10 #  This external input must be validated carefully to avoid security issue.

     11 #

     12 # Copyright (c) 2015, Intel Corporation. All rights reserved.<BR>

     13 # This program and the accompanying materials

     14 # are licensed and made available under the terms and conditions of the BSD License

     15 # which accompanies this distribution. The full text of the license may be found at

     16 # http://opensource.org/licenses/bsd-license.php

     17 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,

     18 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.

     19 #

     20 ##

     21 
     22 [Defines]
     23   INF_VERSION                    = 0x00010005
     24   BASE_NAME                      = Tcg2Smm
     25   MODULE_UNI_FILE                = Tcg2Smm.uni
     26   FILE_GUID                      = 44A20657-10B8-4049-A148-ACD8812AF257
     27   MODULE_TYPE                    = DXE_SMM_DRIVER
     28   PI_SPECIFICATION_VERSION       = 0x0001000A
     29   VERSION_STRING                 = 1.0
     30   ENTRY_POINT                    = InitializeTcgSmm
     31 
     32 [Sources]
     33   Tcg2Smm.h
     34   Tcg2Smm.c
     35   Tpm.asl
     36 
     37 [Packages]
     38   MdePkg/MdePkg.dec
     39   MdeModulePkg/MdeModulePkg.dec
     40   SecurityPkg/SecurityPkg.dec
     41 
     42 [LibraryClasses]
     43   BaseLib
     44   BaseMemoryLib
     45   UefiDriverEntryPoint
     46   SmmServicesTableLib
     47   UefiBootServicesTableLib
     48   DebugLib
     49   DxeServicesLib
     50   TpmMeasurementLib
     51   Tpm2DeviceLib
     52   Tcg2PhysicalPresenceLib
     53 
     54 [Guids]
     55   ## SOMETIMES_PRODUCES ## Variable:L"MemoryOverwriteRequestControl"

     56   ## SOMETIMES_CONSUMES ## Variable:L"MemoryOverwriteRequestControl"  

     57   gEfiMemoryOverwriteControlDataGuid
     58   
     59   gEfiTpmDeviceInstanceTpm20DtpmGuid                            ## PRODUCES           ## GUID       # TPM device identifier

     60 
     61 [Protocols]
     62   gEfiSmmSwDispatch2ProtocolGuid                                ## CONSUMES

     63   gEfiSmmVariableProtocolGuid                                   ## CONSUMES

     64   gEfiAcpiTableProtocolGuid                                     ## CONSUMES

     65 
     66 [Pcd]
     67   gEfiSecurityPkgTokenSpaceGuid.PcdTpmInstanceGuid              ## CONSUMES

     68   gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemId            ## SOMETIMES_CONSUMES

     69   gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemTableId       ## SOMETIMES_CONSUMES

     70   gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemRevision      ## SOMETIMES_CONSUMES

     71   gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultCreatorId        ## SOMETIMES_CONSUMES

     72   gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultCreatorRevision  ## SOMETIMES_CONSUMES

     73 
     74 [Depex]
     75   gEfiAcpiTableProtocolGuid AND
     76   gEfiSmmSwDispatch2ProtocolGuid AND
     77   gEfiSmmVariableProtocolGuid
     78 
     79 [UserExtensions.TianoCore."ExtraFiles"]
     80   Tcg2SmmExtra.uni
     81