• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 
29 typedef 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 
38 typedef 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