1/** @file 2 3Copyright (c) 2010, Intel Corporation. All rights reserved.<BR> 4 5This program and the accompanying materials 6are licensed and made available under the terms and conditions 7of the BSD License which accompanies this distribution. The 8full text of the license may be found at 9http://opensource.org/licenses/bsd-license.php 10 11THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 12WITHOUT 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 30typedef 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 41typedef 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