]> git.proxmox.com Git - mirror_edk2.git/blame - MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxLibPrivate.h
MdeModulePkg/FPDT: Lock boot performance table address variable at EndOfDxe
[mirror_edk2.git] / MdeModulePkg / Library / SmmLockBoxLib / SmmLockBoxLibPrivate.h
CommitLineData
1c837cd5 1/** @file\r
2\r
3Copyright (c) 2010, Intel Corporation. All rights reserved.<BR>\r
4\r
9d510e61 5SPDX-License-Identifier: BSD-2-Clause-Patent\r
1c837cd5 6\r
7**/\r
8\r
9#ifndef _SMM_LOCK_BOX_LIB_PRIVATE_H_\r
10#define _SMM_LOCK_BOX_LIB_PRIVATE_H_\r
11\r
12#include <Uefi.h>\r
13\r
d31182c1 14#pragma pack(1)\r
1c837cd5 15\r
16//\r
17// Below data structure is used for lockbox registration in SMST\r
18//\r
19\r
20#define SMM_LOCK_BOX_SIGNATURE_32 SIGNATURE_64 ('L','O','C','K','B','_','3','2')\r
21#define SMM_LOCK_BOX_SIGNATURE_64 SIGNATURE_64 ('L','O','C','K','B','_','6','4')\r
22\r
23typedef struct {\r
24 UINT64 Signature;\r
25 EFI_PHYSICAL_ADDRESS LockBoxDataAddress;\r
26} SMM_LOCK_BOX_CONTEXT;\r
27\r
28//\r
29// Below data structure is used for lockbox management\r
30//\r
31\r
32#define SMM_LOCK_BOX_DATA_SIGNATURE SIGNATURE_64 ('L','O','C','K','B','O','X','D')\r
33\r
34typedef struct {\r
35 UINT64 Signature;\r
36 EFI_GUID Guid;\r
37 EFI_PHYSICAL_ADDRESS Buffer;\r
38 UINT64 Length;\r
39 UINT64 Attributes;\r
40 EFI_PHYSICAL_ADDRESS SmramBuffer;\r
41 LIST_ENTRY Link;\r
42} SMM_LOCK_BOX_DATA;\r
43\r
d31182c1 44#pragma pack()\r
1c837cd5 45\r
e35fce8a
KQ
46/**\r
47 Constructor for SmmLockBox library.\r
48 This is used to set SmmLockBox context, which will be used in PEI phase in S3 boot path later.\r
49\r
50 @retval EFI_SUCEESS\r
51 @return Others Some error occurs.\r
52**/\r
53EFI_STATUS\r
54SmmLockBoxMmConstructor (\r
55 VOID\r
56 );\r
57\r
58/**\r
59 Destructor for SmmLockBox library.\r
60 This is used to uninstall SmmLockBoxCommunication configuration table\r
61 if it has been installed in Constructor.\r
62\r
63 @retval EFI_SUCEESS The destructor always returns EFI_SUCCESS.\r
64\r
65**/\r
66EFI_STATUS\r
67SmmLockBoxMmDestructor (\r
68 VOID\r
69 );\r
70\r
1c837cd5 71#endif\r
72\r