/** @file | |
Copyright (c) 2010, Intel Corporation. All rights reserved.<BR> | |
This program and the accompanying materials | |
are licensed and made available under the terms and conditions | |
of the BSD License which accompanies this distribution. The | |
full text of the license may be found at | |
http://opensource.org/licenses/bsd-license.php | |
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, | |
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. | |
**/ | |
#ifndef _SMM_LOCK_BOX_LIB_PRIVATE_H_ | |
#define _SMM_LOCK_BOX_LIB_PRIVATE_H_ | |
#include <Uefi.h> | |
#pragma pack(1) | |
// | |
// Below data structure is used for lockbox registration in SMST | |
// | |
#define SMM_LOCK_BOX_SIGNATURE_32 SIGNATURE_64 ('L','O','C','K','B','_','3','2') | |
#define SMM_LOCK_BOX_SIGNATURE_64 SIGNATURE_64 ('L','O','C','K','B','_','6','4') | |
typedef struct { | |
UINT64 Signature; | |
EFI_PHYSICAL_ADDRESS LockBoxDataAddress; | |
} SMM_LOCK_BOX_CONTEXT; | |
// | |
// Below data structure is used for lockbox management | |
// | |
#define SMM_LOCK_BOX_DATA_SIGNATURE SIGNATURE_64 ('L','O','C','K','B','O','X','D') | |
typedef struct { | |
UINT64 Signature; | |
EFI_GUID Guid; | |
EFI_PHYSICAL_ADDRESS Buffer; | |
UINT64 Length; | |
UINT64 Attributes; | |
EFI_PHYSICAL_ADDRESS SmramBuffer; | |
LIST_ENTRY Link; | |
} SMM_LOCK_BOX_DATA; | |
#pragma pack() | |
#endif | |