]> git.proxmox.com Git - mirror_edk2.git/blob - BaseTools/Source/C/Include/Common/VariableFormat.h
Sync EDKII BaseTools to BaseTools project r1971
[mirror_edk2.git] / BaseTools / Source / C / Include / Common / VariableFormat.h
1 /**@file
2 Header file for EFI Variable Services.
3
4 Copyright (c) 2007 - 2008, Intel Corporation. All rights reserved.<BR>
5
6 This program and the accompanying materials are licensed and made available
7 under the terms and conditions of the BSD License which accompanies this
8 distribution. The 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 File Name: VariableFormat.h
15
16 **/
17
18 #ifndef __VARIABLE_FORMAT_H__
19 #define __VARIABLE_FORMAT_H__
20
21 #define VARIABLE_STORE_SIGNATURE EFI_SIGNATURE_32 ('$', 'V', 'S', 'S')
22
23 #define VARIABLE_DATA 0x55AA
24
25 //
26 // Variable Store Header flags
27 //
28 #define VARIABLE_STORE_FORMATTED 0x5a
29 #define VARIABLE_STORE_HEALTHY 0xfe
30
31 #pragma pack(1)
32
33 typedef struct {
34 UINT32 Signature;
35 UINT32 Size;
36 UINT8 Format;
37 UINT8 State;
38 UINT16 Reserved;
39 UINT32 Reserved1;
40 } VARIABLE_STORE_HEADER;
41
42 typedef struct {
43 UINT16 StartId;
44 UINT8 State;
45 UINT8 Reserved;
46 UINT32 Attributes;
47 UINT32 NameSize;
48 UINT32 DataSize;
49 EFI_GUID VendorGuid;
50 } VARIABLE_HEADER;
51
52 #pragma pack()
53
54 #endif // _EFI_VARIABLE_H_