VirtualBox

source: vbox/trunk/src/VBox/Devices/EFI/FirmwareNew/MdePkg/Include/IndustryStandard/Tpm2Acpi.h@ 108794

Last change on this file since 108794 was 108794, checked in by vboxsync, 2 weeks ago

Devices/EFI/FirmwareNew: Merge edk2-stable202502 from the vendor branch and make it build for the important platforms, bugref:4643

  • Property svn:eol-style set to native
File size: 2.6 KB
Line 
1/** @file
2 TPM2 ACPI table definition.
3
4Copyright (c) 2013 - 2019, Intel Corporation. All rights reserved. <BR>
5Copyright (c) 2021, Ampere Computing LLC. All rights reserved. <BR>
6Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. <BR>
7SPDX-License-Identifier: BSD-2-Clause-Patent
8
9**/
10
11#ifndef _TPM2_ACPI_H_
12#define _TPM2_ACPI_H_
13
14#include <IndustryStandard/Acpi.h>
15
16#pragma pack (1)
17
18#define EFI_TPM2_ACPI_TABLE_REVISION_3 3
19#define EFI_TPM2_ACPI_TABLE_REVISION_4 4
20#define EFI_TPM2_ACPI_TABLE_REVISION_5 5
21#define EFI_TPM2_ACPI_TABLE_REVISION EFI_TPM2_ACPI_TABLE_REVISION_4
22
23#define EFI_TPM2_ACPI_TABLE_START_METHOD_SPECIFIC_PARAMETERS_MAX_SIZE_REVISION_4 12
24#define EFI_TPM2_ACPI_TABLE_START_METHOD_SPECIFIC_PARAMETERS_MAX_SIZE_REVISION_5 16
25#define EFI_TPM2_ACPI_TABLE_START_METHOD_SPECIFIC_PARAMETERS_MAX_SIZE EFI_TPM2_ACPI_TABLE_START_METHOD_SPECIFIC_PARAMETERS_MAX_SIZE_REVISION_4
26
27typedef struct {
28 EFI_ACPI_DESCRIPTION_HEADER Header;
29 // Flags field is replaced in version 4 and above
30 // BIT0~15: PlatformClass This field is only valid for version 4 and above
31 // BIT16~31: Reserved
32 UINT32 Flags;
33 UINT64 AddressOfControlArea;
34 UINT32 StartMethod;
35 // UINT8 PlatformSpecificParameters[]; // size up to 12
36 // UINT32 Laml; // Optional
37 // UINT64 Lasa; // Optional
38} EFI_TPM2_ACPI_TABLE;
39
40#define EFI_TPM2_ACPI_TABLE_START_METHOD_ACPI 2
41#define EFI_TPM2_ACPI_TABLE_START_METHOD_TIS 6
42#define EFI_TPM2_ACPI_TABLE_START_METHOD_COMMAND_RESPONSE_BUFFER_INTERFACE 7
43#define EFI_TPM2_ACPI_TABLE_START_METHOD_COMMAND_RESPONSE_BUFFER_INTERFACE_WITH_ACPI 8
44#define EFI_TPM2_ACPI_TABLE_START_METHOD_COMMAND_RESPONSE_BUFFER_INTERFACE_WITH_SMC 11
45#define EFI_TPM2_ACPI_TABLE_START_METHOD_COMMAND_RESPONSE_BUFFER_INTERFACE_WITH_FFA 15
46
47typedef struct {
48 UINT32 Reserved;
49 UINT32 Error;
50 UINT32 Cancel;
51 UINT32 Start;
52 UINT64 InterruptControl;
53 UINT32 CommandSize;
54 UINT64 Command;
55 UINT32 ResponseSize;
56 UINT64 Response;
57} EFI_TPM2_ACPI_CONTROL_AREA;
58
59//
60// Start Method Specific Parameters for ARM SMC Start Method (11)
61// Refer to Table 9: Start Method Specific Parameters for ARM SMC
62//
63typedef struct {
64 UINT32 Interrupt;
65 UINT8 Flags;
66 UINT8 OperationFlags;
67 UINT8 Reserved[2];
68 UINT32 SmcFunctionId;
69} EFI_TPM2_ACPI_START_METHOD_SPECIFIC_PARAMETERS_ARM_SMC;
70
71#pragma pack ()
72
73#endif
Note: See TracBrowser for help on using the repository browser.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette