]> git.proxmox.com Git - mirror_edk2.git/blame - SecurityPkg/Library/DxeTcgPhysicalPresenceStorageLib/DxeTcg2PhysicalPresenceStorage.h
SecurityPkg DxeTcgPhysicalPresenceLib: Enable Storage actions.
[mirror_edk2.git] / SecurityPkg / Library / DxeTcgPhysicalPresenceStorageLib / DxeTcg2PhysicalPresenceStorage.h
CommitLineData
b54946e0
ED
1/** @file\r
2 Tcg PP storage library instance that does support any storage specific PPI.\r
3\r
4Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>\r
5This program and the accompanying materials\r
6are licensed and made available under the terms and conditions of the BSD License\r
7which accompanies this distribution. The full text of the license may be found at\r
8http://opensource.org/licenses/bsd-license.php\r
9\r
10THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
11WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
12\r
13**/\r
14#ifndef _TCG2_PHYSICAL_PRESENCE_STORAGE_H_\r
15#define _TCG2_PHYSICAL_PRESENCE_STORAGE_H_\r
16\r
17/**\r
18 The handler for TPM physical presence function:\r
19 Submit TPM Operation Request to Pre-OS Environment and\r
20 Submit TPM Operation Request to Pre-OS Environment 2.\r
21\r
22 Caution: This function may receive untrusted input.\r
23\r
24 @param[in] OperationRequest TPM physical presence operation request.\r
25 @param[in] RequestParameter TPM physical presence operation request parameter.\r
26\r
27 @return Return Code for Submit TPM Operation Request to Pre-OS Environment and\r
28 Submit TPM Operation Request to Pre-OS Environment 2.\r
29**/\r
30UINT32\r
31Tcg2SubmitStorageRequest (\r
32 IN UINT32 OperationRequest,\r
33 IN UINT32 RequestParameter\r
34 );\r
35\r
36/**\r
37 Check if the pending TPM request needs user input to confirm.\r
38\r
39 The TPM request may come from OS. This API will check if TPM request exists and need user\r
40 input to confirmation.\r
41\r
42 @retval TRUE TPM needs input to confirm user physical presence.\r
43 @retval FALSE TPM doesn't need input to confirm user physical presence.\r
44\r
45**/\r
46BOOLEAN\r
47Tcg2NeedUserConfirm(\r
48 VOID\r
49 );\r
50\r
51/**\r
52 The handler for TPM physical presence function:\r
53 Return TPM Operation Response to OS Environment.\r
54\r
55 @param[out] MostRecentRequest Most recent operation request.\r
56 @param[out] Response Response to the most recent operation request.\r
57\r
58 @return Return Code for Return TPM Operation Response to OS Environment.\r
59**/\r
60UINT32\r
61EFIAPI\r
62Tcg2ReturnOperationResponseToOsFunction (\r
63 OUT UINT32 *MostRecentRequest,\r
64 OUT UINT32 *Response\r
65 );\r
66\r
67/**\r
68 Check and execute the pending TPM request.\r
69\r
70 The TPM request may come from OS or BIOS. This API will display request information and wait\r
71 for user confirmation if TPM request exists. The TPM request will be sent to TPM device after\r
72 the TPM request is confirmed, and one or more reset may be required to make TPM request to\r
73 take effect.\r
74\r
75 This API should be invoked after console in and console out are all ready as they are required\r
76 to display request information and get user input to confirm the request.\r
77\r
78 @param[in] PlatformAuth platform auth value. NULL means no platform auth change.\r
79**/\r
80VOID\r
81EFIAPI\r
82Tcg2ProcessStorageRequest (\r
83 VOID\r
84 );\r
85\r
86\r
87#endif\r
88\r