blob: 8422847c5a29f14d8594be5e2f89b71ebad49292 [file] [log] [blame]
Vishal Bhoj82c80712015-12-15 21:13:33 +05301/** @file
2 SmmLockBox guid header file.
3
4Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved.<BR>
5
6This program and the accompanying materials
7are licensed and made available under the terms and conditions
8of the BSD License which accompanies this distribution. The
9full text of the license may be found at
10http://opensource.org/licenses/bsd-license.php
11
12THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
13WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
14
15**/
16
17#ifndef _SMM_LOCK_BOX_GUID_H_
18#define _SMM_LOCK_BOX_GUID_H_
19
20#define EFI_SMM_LOCK_BOX_COMMUNICATION_GUID \
21 {0x2a3cfebd, 0x27e8, 0x4d0a, {0x8b, 0x79, 0xd6, 0x88, 0xc2, 0xa3, 0xe1, 0xc0}}
22
23//
24// Below data structure is used for communication between PEI/DXE to SMM.
25//
26
27#define EFI_SMM_LOCK_BOX_COMMAND_SAVE 0x1
28#define EFI_SMM_LOCK_BOX_COMMAND_UPDATE 0x2
29#define EFI_SMM_LOCK_BOX_COMMAND_RESTORE 0x3
30#define EFI_SMM_LOCK_BOX_COMMAND_SET_ATTRIBUTES 0x4
31#define EFI_SMM_LOCK_BOX_COMMAND_RESTORE_ALL_IN_PLACE 0x5
32
33typedef struct {
34 UINT32 Command;
35 UINT32 DataLength;
36 UINT64 ReturnStatus;
37} EFI_SMM_LOCK_BOX_PARAMETER_HEADER;
38
39typedef struct {
40 EFI_SMM_LOCK_BOX_PARAMETER_HEADER Header;
41 GUID Guid;
42 PHYSICAL_ADDRESS Buffer;
43 UINT64 Length;
44} EFI_SMM_LOCK_BOX_PARAMETER_SAVE;
45
46typedef struct {
47 EFI_SMM_LOCK_BOX_PARAMETER_HEADER Header;
48 GUID Guid;
49 UINT64 Offset;
50 PHYSICAL_ADDRESS Buffer;
51 UINT64 Length;
52} EFI_SMM_LOCK_BOX_PARAMETER_UPDATE;
53
54typedef struct {
55 EFI_SMM_LOCK_BOX_PARAMETER_HEADER Header;
56 GUID Guid;
57 PHYSICAL_ADDRESS Buffer;
58 UINT64 Length;
59} EFI_SMM_LOCK_BOX_PARAMETER_RESTORE;
60
61typedef struct {
62 EFI_SMM_LOCK_BOX_PARAMETER_HEADER Header;
63 GUID Guid;
64 UINT64 Attributes;
65} EFI_SMM_LOCK_BOX_PARAMETER_SET_ATTRIBUTES;
66
67typedef struct {
68 EFI_SMM_LOCK_BOX_PARAMETER_HEADER Header;
69} EFI_SMM_LOCK_BOX_PARAMETER_RESTORE_ALL_IN_PLACE;
70
71extern EFI_GUID gEfiSmmLockBoxCommunicationGuid;
72
73#endif