]> git.proxmox.com Git - mirror_edk2.git/blame - SecurityPkg/Include/Guid/PhysicalPresenceData.h
ArmPkg/ArmMmuLib ARM: fix thinko in second level page table handling
[mirror_edk2.git] / SecurityPkg / Include / Guid / PhysicalPresenceData.h
CommitLineData
0c18794e 1/** @file\r
2 Define the variable data structures used for TCG physical presence.\r
3 The TPM request from firmware or OS is saved to variable. And it is\r
b3548d32 4 cleared after it is processed in the next boot cycle. The TPM response\r
0c18794e 5 is saved to variable.\r
6\r
b3548d32
LG
7Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>\r
8This program and the accompanying materials\r
9are licensed and made available under the terms and conditions of the BSD License\r
10which accompanies this distribution. The full text of the license may be found at\r
0c18794e 11http://opensource.org/licenses/bsd-license.php\r
12\r
b3548d32 13THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
0c18794e 14WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
15\r
16**/\r
17\r
18#ifndef __PHYSICAL_PRESENCE_DATA_GUID_H__\r
19#define __PHYSICAL_PRESENCE_DATA_GUID_H__\r
20\r
21#define EFI_PHYSICAL_PRESENCE_DATA_GUID \\r
22 { \\r
23 0xf6499b1, 0xe9ad, 0x493d, { 0xb9, 0xc2, 0x2f, 0x90, 0x81, 0x5c, 0x6c, 0xbc }\\r
24 }\r
25\r
26#define PHYSICAL_PRESENCE_VARIABLE L"PhysicalPresence"\r
27\r
28typedef struct {\r
29 UINT8 PPRequest; ///< Physical Presence request command.\r
30 UINT8 LastPPRequest;\r
31 UINT32 PPResponse;\r
0c18794e 32} EFI_PHYSICAL_PRESENCE;\r
33\r
0c18794e 34//\r
35// The definition of physical presence operation actions\r
36//\r
607599bf 37#define PHYSICAL_PRESENCE_NO_ACTION 0\r
38#define PHYSICAL_PRESENCE_ENABLE 1\r
39#define PHYSICAL_PRESENCE_DISABLE 2\r
40#define PHYSICAL_PRESENCE_ACTIVATE 3\r
b3548d32 41#define PHYSICAL_PRESENCE_DEACTIVATE 4\r
607599bf 42#define PHYSICAL_PRESENCE_CLEAR 5\r
43#define PHYSICAL_PRESENCE_ENABLE_ACTIVATE 6\r
44#define PHYSICAL_PRESENCE_DEACTIVATE_DISABLE 7\r
45#define PHYSICAL_PRESENCE_SET_OWNER_INSTALL_TRUE 8\r
46#define PHYSICAL_PRESENCE_SET_OWNER_INSTALL_FALSE 9\r
47#define PHYSICAL_PRESENCE_ENABLE_ACTIVATE_OWNER_TRUE 10\r
48#define PHYSICAL_PRESENCE_DEACTIVATE_DISABLE_OWNER_FALSE 11\r
49#define PHYSICAL_PRESENCE_DEFERRED_PP_UNOWNERED_FIELD_UPGRADE 12\r
50#define PHYSICAL_PRESENCE_SET_OPERATOR_AUTH 13\r
51#define PHYSICAL_PRESENCE_CLEAR_ENABLE_ACTIVATE 14\r
52#define PHYSICAL_PRESENCE_SET_NO_PPI_PROVISION_FALSE 15\r
53#define PHYSICAL_PRESENCE_SET_NO_PPI_PROVISION_TRUE 16\r
54#define PHYSICAL_PRESENCE_SET_NO_PPI_CLEAR_FALSE 17\r
55#define PHYSICAL_PRESENCE_SET_NO_PPI_CLEAR_TRUE 18\r
56#define PHYSICAL_PRESENCE_SET_NO_PPI_MAINTENANCE_FALSE 19\r
57#define PHYSICAL_PRESENCE_SET_NO_PPI_MAINTENANCE_TRUE 20\r
58#define PHYSICAL_PRESENCE_ENABLE_ACTIVATE_CLEAR 21\r
59#define PHYSICAL_PRESENCE_ENABLE_ACTIVATE_CLEAR_ENABLE_ACTIVATE 22\r
0c18794e 60\r
ed094569
DG
61//\r
62// This variable is used to save TPM Management Flags and corresponding operations.\r
b3548d32 63// It should be protected from malicious software (e.g. Set it as read-only variable).\r
ed094569
DG
64//\r
65#define PHYSICAL_PRESENCE_FLAGS_VARIABLE L"PhysicalPresenceFlags"\r
4610b23a
JY
66typedef struct {\r
67 UINT8 PPFlags;\r
68} EFI_PHYSICAL_PRESENCE_FLAGS;\r
ed094569
DG
69\r
70//\r
71// The definition bit of the TPM Management Flags\r
72//\r
73#define FLAG_NO_PPI_PROVISION BIT0\r
74#define FLAG_NO_PPI_CLEAR BIT1\r
75#define FLAG_NO_PPI_MAINTENANCE BIT2\r
76#define FLAG_RESET_TRACK BIT3\r
77\r
0c18794e 78extern EFI_GUID gEfiPhysicalPresenceGuid;\r
79\r
80#endif\r
81\r