]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxLibPrivate.h
MdeModulePkg: Add SMM LockBox
[mirror_edk2.git] / MdeModulePkg / Library / SmmLockBoxLib / SmmLockBoxLibPrivate.h
diff --git a/MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxLibPrivate.h b/MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxLibPrivate.h
new file mode 100644 (file)
index 0000000..3dfd03e
--- /dev/null
@@ -0,0 +1,54 @@
+/** @file\r
+\r
+Copyright (c) 2010, Intel Corporation. All rights reserved.<BR>\r
+\r
+This program and the accompanying materials\r
+are licensed and made available under the terms and conditions\r
+of the BSD License which accompanies this distribution.  The\r
+full text of the license may be found at\r
+http://opensource.org/licenses/bsd-license.php\r
+\r
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+\r
+**/\r
+\r
+#ifndef _SMM_LOCK_BOX_LIB_PRIVATE_H_\r
+#define _SMM_LOCK_BOX_LIB_PRIVATE_H_\r
+\r
+#include <Uefi.h>\r
+\r
+#pragma pack(push, 1)\r
+\r
+//\r
+// Below data structure is used for lockbox registration in SMST\r
+//\r
+\r
+#define SMM_LOCK_BOX_SIGNATURE_32 SIGNATURE_64 ('L','O','C','K','B','_','3','2')\r
+#define SMM_LOCK_BOX_SIGNATURE_64 SIGNATURE_64 ('L','O','C','K','B','_','6','4')\r
+\r
+typedef struct {\r
+  UINT64                   Signature;\r
+  EFI_PHYSICAL_ADDRESS     LockBoxDataAddress;\r
+} SMM_LOCK_BOX_CONTEXT;\r
+\r
+//\r
+// Below data structure is used for lockbox management\r
+//\r
+\r
+#define SMM_LOCK_BOX_DATA_SIGNATURE SIGNATURE_64 ('L','O','C','K','B','O','X','D')\r
+\r
+typedef struct {\r
+  UINT64                         Signature;\r
+  EFI_GUID                       Guid;\r
+  EFI_PHYSICAL_ADDRESS           Buffer;\r
+  UINT64                         Length;\r
+  UINT64                         Attributes;\r
+  EFI_PHYSICAL_ADDRESS           SmramBuffer;\r
+  LIST_ENTRY                     Link;\r
+} SMM_LOCK_BOX_DATA;\r
+\r
+#pragma pack(pop)\r
+\r
+#endif\r
+\r