1 /** @file 2 3 Copyright (c) 2010, Intel Corporation. All rights reserved.<BR> 4 5 This program and the accompanying materials 6 are licensed and made available under the terms and conditions 7 of the BSD License which accompanies this distribution. The 8 full text of the license may be found at 9 http://opensource.org/licenses/bsd-license.php 10 11 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 12 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 13 14 **/ 15 16 #ifndef _SMM_LOCK_BOX_LIB_PRIVATE_H_ 17 #define _SMM_LOCK_BOX_LIB_PRIVATE_H_ 18 19 #include <Uefi.h> 20 21 #pragma pack(1) 22 23 // 24 // Below data structure is used for lockbox registration in SMST 25 // 26 27 #define SMM_LOCK_BOX_SIGNATURE_32 SIGNATURE_64 ('L','O','C','K','B','_','3','2') 28 #define SMM_LOCK_BOX_SIGNATURE_64 SIGNATURE_64 ('L','O','C','K','B','_','6','4') 29 30 typedef struct { 31 UINT64 Signature; 32 EFI_PHYSICAL_ADDRESS LockBoxDataAddress; 33 } SMM_LOCK_BOX_CONTEXT; 34 35 // 36 // Below data structure is used for lockbox management 37 // 38 39 #define SMM_LOCK_BOX_DATA_SIGNATURE SIGNATURE_64 ('L','O','C','K','B','O','X','D') 40 41 typedef struct { 42 UINT64 Signature; 43 EFI_GUID Guid; 44 EFI_PHYSICAL_ADDRESS Buffer; 45 UINT64 Length; 46 UINT64 Attributes; 47 EFI_PHYSICAL_ADDRESS SmramBuffer; 48 LIST_ENTRY Link; 49 } SMM_LOCK_BOX_DATA; 50 51 #pragma pack() 52 53 #endif 54 55