]> git.proxmox.com Git - mirror_edk2.git/blob - MdePkg/Include/IndustryStandard/Tpm2Acpi.h
MdeModulePkg:Tpm2Acpi.h: Upgrade UEFI supporting TCG spec info
[mirror_edk2.git] / MdePkg / Include / IndustryStandard / Tpm2Acpi.h
1 /** @file
2 TPM2 ACPI table definition.
3
4 Copyright (c) 2013 - 2019, Intel Corporation. All rights reserved. <BR>
5 This program and the accompanying materials
6 are licensed and made available under the terms and conditions of the BSD License
7 which accompanies this distribution. The full text of the license may be found at
8 http://opensource.org/licenses/bsd-license.php
9
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12
13 **/
14
15 #ifndef _TPM2_ACPI_H_
16 #define _TPM2_ACPI_H_
17
18 #include <IndustryStandard/Acpi.h>
19
20 #pragma pack (1)
21
22 #define EFI_TPM2_ACPI_TABLE_REVISION_3 3
23 #define EFI_TPM2_ACPI_TABLE_REVISION_4 4
24 #define EFI_TPM2_ACPI_TABLE_REVISION EFI_TPM2_ACPI_TABLE_REVISION_4
25
26 typedef struct {
27 EFI_ACPI_DESCRIPTION_HEADER Header;
28 // Flags field is replaced in version 4 and above
29 // BIT0~15: PlatformClass This field is only valid for version 4 and above
30 // BIT16~31: Reserved
31 UINT32 Flags;
32 UINT64 AddressOfControlArea;
33 UINT32 StartMethod;
34 //UINT8 PlatformSpecificParameters[]; // size up to 12
35 //UINT32 Laml; // Optional
36 //UINT32 Lasa; // Optional
37 } EFI_TPM2_ACPI_TABLE;
38
39 #define EFI_TPM2_ACPI_TABLE_START_METHOD_ACPI 2
40 #define EFI_TPM2_ACPI_TABLE_START_METHOD_TIS 6
41 #define EFI_TPM2_ACPI_TABLE_START_METHOD_COMMAND_RESPONSE_BUFFER_INTERFACE 7
42 #define EFI_TPM2_ACPI_TABLE_START_METHOD_COMMAND_RESPONSE_BUFFER_INTERFACE_WITH_ACPI 8
43 #define EFI_TPM2_ACPI_TABLE_START_METHOD_COMMAND_RESPONSE_BUFFER_INTERFACE_WITH_SMC 11
44
45 typedef struct {
46 UINT32 Reserved;
47 UINT32 Error;
48 UINT32 Cancel;
49 UINT32 Start;
50 UINT64 InterruptControl;
51 UINT32 CommandSize;
52 UINT64 Command;
53 UINT32 ResponseSize;
54 UINT64 Response;
55 } EFI_TPM2_ACPI_CONTROL_AREA;
56
57 #pragma pack ()
58
59 #endif