1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- /** @file
- TPM NVS MM guid, used for exchanging information, including SWI value and NVS region
- information, for patching TPM ACPI table.
- Copyright (c) 2015 - 2018, Intel Corporation. All rights reserved.<BR>
- Copyright (c) Microsoft Corporation.
- SPDX-License-Identifier: BSD-2-Clause-Patent
- **/
- #ifndef TCG2_NVS_MM_H_
- #define TCG2_NVS_MM_H_
- #define MM_TPM_NVS_HOB_GUID \
- { 0xc96c76eb, 0xbc78, 0x429c, { 0x9f, 0x4b, 0xda, 0x51, 0x78, 0xc2, 0x84, 0x57 }}
- extern EFI_GUID gTpmNvsMmGuid;
- #pragma pack(1)
- typedef struct {
- UINT8 SoftwareSmi;
- UINT32 Parameter;
- UINT32 Response;
- UINT32 Request;
- UINT32 RequestParameter;
- UINT32 LastRequest;
- UINT32 ReturnCode;
- } PHYSICAL_PRESENCE_NVS;
- typedef struct {
- UINT8 SoftwareSmi;
- UINT32 Parameter;
- UINT32 Request;
- UINT32 ReturnCode;
- } MEMORY_CLEAR_NVS;
- typedef struct {
- PHYSICAL_PRESENCE_NVS PhysicalPresence;
- MEMORY_CLEAR_NVS MemoryClear;
- UINT32 PPRequestUserConfirm;
- UINT32 TpmIrqNum;
- BOOLEAN IsShortFormPkgLength;
- } TCG_NVS;
- typedef struct {
- UINT8 OpRegionOp;
- UINT32 NameString;
- UINT8 RegionSpace;
- UINT8 DWordPrefix;
- UINT32 RegionOffset;
- UINT8 BytePrefix;
- UINT8 RegionLen;
- } AML_OP_REGION_32_8;
- typedef struct {
- UINT64 Function;
- UINT64 ReturnStatus;
- EFI_PHYSICAL_ADDRESS TargetAddress;
- UINT64 RegisteredPpSwiValue;
- UINT64 RegisteredMcSwiValue;
- } TPM_NVS_MM_COMM_BUFFER;
- #pragma pack()
- typedef enum {
- TpmNvsMmExchangeInfo,
- } TPM_NVS_MM_FUNCTION;
- #endif // TCG2_NVS_MM_H_
|