1/**@file
2  Header file for EFI Variable Services.
3
4  Copyright (c) 2007 - 2014, 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**/
15
16#ifndef __VARIABLE_FORMAT_H__
17#define __VARIABLE_FORMAT_H__
18
19#define VARIABLE_DATA                     0x55AA
20
21//
22// Variable Store Header flags
23//
24#define VARIABLE_STORE_FORMATTED          0x5a
25#define VARIABLE_STORE_HEALTHY            0xfe
26
27#pragma pack(1)
28
29typedef struct {
30  EFI_GUID  Signature;
31  UINT32    Size;
32  UINT8     Format;
33  UINT8     State;
34  UINT16    Reserved;
35  UINT32    Reserved1;
36} VARIABLE_STORE_HEADER;
37
38typedef struct {
39  UINT16      StartId;
40  UINT8       State;
41  UINT8       Reserved;
42  UINT32      Attributes;
43  UINT32      NameSize;
44  UINT32      DataSize;
45  EFI_GUID    VendorGuid;
46} VARIABLE_HEADER;
47
48#pragma pack()
49
50#endif // _EFI_VARIABLE_H_
51