mirror of
				https://git.proxmox.com/git/mirror_edk2
				synced 2025-10-31 01:35:30 +00:00 
			
		
		
		
	 1c837cd545
			
		
	
	
		1c837cd545
		
	
	
	
	
		
			
			This includes: * LockBox protocol definition * LockBoxLib library interface definition * SmmLockBox GUID * LockBoxNullLib library implementation * 2 SmmLockBoxLib library implementations * SmmLockBox SMM driver Signed-off-by: jljusten Reviewed-by: mdkinney Reviewed-by: geekboy15a Reviewed-by: jyao1 Reviewed-by: lgao4 git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12029 6f19259b-4bc3-4df7-8a09-765794883524
		
			
				
	
	
		
			74 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			74 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /** @file
 | |
|   SmmLockBox guid header file.
 | |
| 
 | |
| Copyright (c) 2010 - 2011, 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_GUID_H_
 | |
| #define _SMM_LOCK_BOX_GUID_H_
 | |
| 
 | |
| #define EFI_SMM_LOCK_BOX_COMMUNICATION_GUID \
 | |
|   {0x2a3cfebd, 0x27e8, 0x4d0a, {0x8b, 0x79, 0xd6, 0x88, 0xc2, 0xa3, 0xe1, 0xc0}}
 | |
| 
 | |
| //
 | |
| // Below data structure is used for communication between PEI/DXE to SMM.
 | |
| //
 | |
| 
 | |
| #define EFI_SMM_LOCK_BOX_COMMAND_SAVE                 0x1
 | |
| #define EFI_SMM_LOCK_BOX_COMMAND_UPDATE               0x2
 | |
| #define EFI_SMM_LOCK_BOX_COMMAND_RESTORE              0x3
 | |
| #define EFI_SMM_LOCK_BOX_COMMAND_SET_ATTRIBUTES       0x4
 | |
| #define EFI_SMM_LOCK_BOX_COMMAND_RESTORE_ALL_IN_PLACE 0x5
 | |
| 
 | |
| typedef struct {
 | |
|   UINT32                         Command;
 | |
|   UINT32                         DataLength;
 | |
|   UINT64                         ReturnStatus;
 | |
| } EFI_SMM_LOCK_BOX_PARAMETER_HEADER;
 | |
| 
 | |
| typedef struct {
 | |
|   EFI_SMM_LOCK_BOX_PARAMETER_HEADER  Header;
 | |
|   GUID                               Guid;
 | |
|   PHYSICAL_ADDRESS                   Buffer;
 | |
|   UINT64                             Length;
 | |
| } EFI_SMM_LOCK_BOX_PARAMETER_SAVE;
 | |
| 
 | |
| typedef struct {
 | |
|   EFI_SMM_LOCK_BOX_PARAMETER_HEADER  Header;
 | |
|   GUID                               Guid;
 | |
|   UINT64                             Offset;
 | |
|   PHYSICAL_ADDRESS                   Buffer;
 | |
|   UINT64                             Length;
 | |
| } EFI_SMM_LOCK_BOX_PARAMETER_UPDATE;
 | |
| 
 | |
| typedef struct {
 | |
|   EFI_SMM_LOCK_BOX_PARAMETER_HEADER  Header;
 | |
|   GUID                               Guid;
 | |
|   PHYSICAL_ADDRESS                   Buffer;
 | |
|   UINT64                             Length;
 | |
| } EFI_SMM_LOCK_BOX_PARAMETER_RESTORE;
 | |
| 
 | |
| typedef struct {
 | |
|   EFI_SMM_LOCK_BOX_PARAMETER_HEADER  Header;
 | |
|   GUID                               Guid;
 | |
|   UINT64                             Attributes;
 | |
| } EFI_SMM_LOCK_BOX_PARAMETER_SET_ATTRIBUTES;
 | |
| 
 | |
| typedef struct {
 | |
|   EFI_SMM_LOCK_BOX_PARAMETER_HEADER  Header;
 | |
| } EFI_SMM_LOCK_BOX_PARAMETER_RESTORE_ALL_IN_PLACE;
 | |
| 
 | |
| extern EFI_GUID gEfiSmmLockBoxCommunicationGuid;
 | |
| 
 | |
| #endif
 |