]> git.proxmox.com Git - mirror_edk2.git/blob - MdeModulePkg/Include/Guid/SystemNvDataGuid.h
583f7a30bf38e10fe871e76240ca10e5d529265d
[mirror_edk2.git] / MdeModulePkg / Include / Guid / SystemNvDataGuid.h
1 /** @file
2 This file defines NvData Hob GUIDs for System Non Volatile HOB entries
3 and the corresponding hob data structure. NvData Hob can be used to report
4 the region of the system non volatile data for the specific purpose,
5 such as FTW region, Error log region.
6
7 It also defines NvDataFv GUID.
8 This guid can be used as FileSystemGuid in EFI_FIRMWARE_VOLUME_HEADER if
9 this FV image contains NV data, such as NV variable data.
10 This guid can also be used as the signature of FTW working block header.
11
12 Copyright (c) 2006 - 2009, Intel Corporation
13 All rights reserved. This program and the accompanying materials
14 are licensed and made available under the terms and conditions of the BSD License
15 which accompanies this distribution. The full text of the license may be found at
16 http://opensource.org/licenses/bsd-license.php
17
18 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
19 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
20
21 **/
22
23 #ifndef __SYSTEM_NV_DATA_GUID_H__
24 #define __SYSTEM_NV_DATA_GUID_H__
25
26 #define EFI_SYSTEM_NV_DATA_FV_GUID \
27 {0xfff12b8d, 0x7696, 0x4c8b, {0xa9, 0x85, 0x27, 0x47, 0x7, 0x5b, 0x4f, 0x50} }
28
29 #define EFI_SYSTEM_NV_DATA_HOB_GUID \
30 {0xd6e5092d, 0xc7b2, 0x4872, {0xaf, 0x66, 0xfd, 0xc0, 0xe6, 0xf9, 0x5e, 0x78} }
31
32 ///
33 /// Hob entry for NV data region
34 ///
35 typedef struct {
36 EFI_GUID SystemNvDataHobGuid; ///> EFI_SYSTEM_NV_DATA_HOB_GUID
37 EFI_GUID SystemNvDataFvGuid; ///> Guid specifies the NvData Fv for the specific purpose, such as FTW, Error Log.
38 EFI_LBA StartLba; ///> The starting logical block index.
39 UINTN StartLbaOffset; ///> Offset into the starting block at which to the start of NvData region.
40 EFI_LBA EndLba; ///> The last logical block index.
41 UINTN EndLbaOffset; ///> Offset into the last block at which to the end of Nvdata region.
42 UINT32 DataTypeSignature; ///> NvData type in the specified NV range.
43 } NV_SYSTEM_DATA_GUID_TYPE;
44
45 extern EFI_GUID gEfiSystemNvDataHobGuid;
46
47 ///
48 /// NvDataFv GUID used as the signature of FTW working block header.
49 ///
50 extern EFI_GUID gEfiSystemNvDataFvGuid;
51
52 #endif