]> git.proxmox.com Git - mirror_edk2.git/blob - MdeModulePkg/Include/Guid/SystemNvDataGuid.h
Clean up DEC files:
[mirror_edk2.git] / MdeModulePkg / Include / Guid / SystemNvDataGuid.h
1 /** @file
2 This file defines NvDataFv GUID and FTW working block structure header.
3 This guid can be used as FileSystemGuid in EFI_FIRMWARE_VOLUME_HEADER if
4 this FV image contains NV data, such as NV variable data.
5 This guid can also be used as the signature of FTW working block header.
6
7 Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>
8 This program and the accompanying materials are licensed and made available under
9 the terms and conditions of the BSD License that accompanies this distribution.
10 The full text of the license may be found at
11 http://opensource.org/licenses/bsd-license.php.
12
13 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
14 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
15
16 **/
17
18 #ifndef __SYSTEM_NV_DATA_GUID_H__
19 #define __SYSTEM_NV_DATA_GUID_H__
20
21 #define EFI_SYSTEM_NV_DATA_FV_GUID \
22 {0xfff12b8d, 0x7696, 0x4c8b, {0xa9, 0x85, 0x27, 0x47, 0x7, 0x5b, 0x4f, 0x50} }
23
24 ///
25 /// An NvDataFv GUID used as the signature of FTW working block header.
26 ///
27 extern EFI_GUID gEfiSystemNvDataFvGuid;
28
29 #define WORKING_BLOCK_VALID 0x1
30 #define WORKING_BLOCK_INVALID 0x2
31
32 ///
33 /// The EDKII Fault tolerant working block header.
34 /// The header is immediately followed by the write queue data.
35 ///
36 typedef struct {
37 ///
38 /// System Non Volatile FV Guid.
39 ///
40 EFI_GUID Signature;
41 ///
42 /// 32bit CRC caculated for this header.
43 ///
44 UINT32 Crc;
45 ///
46 /// Working block valid bit.
47 ///
48 UINT8 WorkingBlockValid : 1;
49 UINT8 WorkingBlockInvalid : 1;
50 UINT8 Reserved : 6;
51 UINT8 Reserved3[3];
52 ///
53 /// Total size of the following write queue range.
54 ///
55 UINT64 WriteQueueSize;
56 ///
57 /// Write Queue data.
58 /// UINT8 WriteQueue[WriteQueueSize];
59 ///
60 } EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER;
61
62 #endif