12#ifndef __PI_FIRMWAREVOLUME_H__
13#define __PI_FIRMWAREVOLUME_H__
26#define EFI_FV_FILE_ATTRIB_ALIGNMENT 0x0000001F
27#define EFI_FV_FILE_ATTRIB_FIXED 0x00000100
28#define EFI_FV_FILE_ATTRIB_MEMORY_MAPPED 0x00000200
38#define EFI_FVB2_READ_DISABLED_CAP 0x00000001
39#define EFI_FVB2_READ_ENABLED_CAP 0x00000002
40#define EFI_FVB2_READ_STATUS 0x00000004
41#define EFI_FVB2_WRITE_DISABLED_CAP 0x00000008
42#define EFI_FVB2_WRITE_ENABLED_CAP 0x00000010
43#define EFI_FVB2_WRITE_STATUS 0x00000020
44#define EFI_FVB2_LOCK_CAP 0x00000040
45#define EFI_FVB2_LOCK_STATUS 0x00000080
46#define EFI_FVB2_STICKY_WRITE 0x00000200
47#define EFI_FVB2_MEMORY_MAPPED 0x00000400
48#define EFI_FVB2_ERASE_POLARITY 0x00000800
49#define EFI_FVB2_READ_LOCK_CAP 0x00001000
50#define EFI_FVB2_READ_LOCK_STATUS 0x00002000
51#define EFI_FVB2_WRITE_LOCK_CAP 0x00004000
52#define EFI_FVB2_WRITE_LOCK_STATUS 0x00008000
53#define EFI_FVB2_ALIGNMENT 0x001F0000
54#define EFI_FVB2_ALIGNMENT_1 0x00000000
55#define EFI_FVB2_ALIGNMENT_2 0x00010000
56#define EFI_FVB2_ALIGNMENT_4 0x00020000
57#define EFI_FVB2_ALIGNMENT_8 0x00030000
58#define EFI_FVB2_ALIGNMENT_16 0x00040000
59#define EFI_FVB2_ALIGNMENT_32 0x00050000
60#define EFI_FVB2_ALIGNMENT_64 0x00060000
61#define EFI_FVB2_ALIGNMENT_128 0x00070000
62#define EFI_FVB2_ALIGNMENT_256 0x00080000
63#define EFI_FVB2_ALIGNMENT_512 0x00090000
64#define EFI_FVB2_ALIGNMENT_1K 0x000A0000
65#define EFI_FVB2_ALIGNMENT_2K 0x000B0000
66#define EFI_FVB2_ALIGNMENT_4K 0x000C0000
67#define EFI_FVB2_ALIGNMENT_8K 0x000D0000
68#define EFI_FVB2_ALIGNMENT_16K 0x000E0000
69#define EFI_FVB2_ALIGNMENT_32K 0x000F0000
70#define EFI_FVB2_ALIGNMENT_64K 0x00100000
71#define EFI_FVB2_ALIGNMENT_128K 0x00110000
72#define EFI_FVB2_ALIGNMENT_256K 0x00120000
73#define EFI_FVB2_ALIGNMENT_512K 0x00130000
74#define EFI_FVB2_ALIGNMENT_1M 0x00140000
75#define EFI_FVB2_ALIGNMENT_2M 0x00150000
76#define EFI_FVB2_ALIGNMENT_4M 0x00160000
77#define EFI_FVB2_ALIGNMENT_8M 0x00170000
78#define EFI_FVB2_ALIGNMENT_16M 0x00180000
79#define EFI_FVB2_ALIGNMENT_32M 0x00190000
80#define EFI_FVB2_ALIGNMENT_64M 0x001A0000
81#define EFI_FVB2_ALIGNMENT_128M 0x001B0000
82#define EFI_FVB2_ALIGNMENT_256M 0x001C0000
83#define EFI_FVB2_ALIGNMENT_512M 0x001D0000
84#define EFI_FVB2_ALIGNMENT_1G 0x001E0000
85#define EFI_FVB2_ALIGNMENT_2G 0x001F0000
86#define EFI_FVB2_WEAK_ALIGNMENT 0x80000000
153#define EFI_FVH_SIGNATURE SIGNATURE_32 ('_', 'F', 'V', 'H')
158#define EFI_FVH_REVISION 0x02
188#define EFI_FV_EXT_TYPE_OEM_TYPE 0x01
209#define EFI_FV_EXT_TYPE_GUID_TYPE 0x0002
231#define EFI_FV_EXT_TYPE_USED_SIZE_TYPE 0x03
unsigned short UINT16
2-byte unsigned value.
unsigned long long UINT64
8-byte unsigned value.
unsigned char UINT8
1-byte unsigned value.
unsigned int UINT32
4-byte unsigned value.
UINT32 EFI_FV_FILE_ATTRIBUTES
EFI_FV_FILE_ATTRIBUTES.
UINT32 EFI_FVB_ATTRIBUTES_2
type of EFI FVB attribute
GUID EFI_GUID
128-bit buffer containing a unique identifier value.
#define FILE_LICENCE(_licence)
Declare a particular licence as applying to a file.
#define FILE_SECBOOT(_status)
Declare a file's UEFI Secure Boot permission status.
This extension header EFI_FIRMWARE_VOLUME_EXT_ENTRY_GUID_TYPE provides a vendor specific GUID FormatT...
EFI_FIRMWARE_VOLUME_EXT_ENTRY Hdr
Standard extension entry, with the type EFI_FV_EXT_TYPE_OEM_TYPE.
EFI_GUID FormatType
Vendor-specific GUID.
This extension header provides a mapping between a GUID and an OEM file type.
EFI_FIRMWARE_VOLUME_EXT_ENTRY Hdr
Standard extension entry, with the type EFI_FV_EXT_TYPE_OEM_TYPE.
UINT32 TypeMask
A bit mask, one bit for each file type between 0xC0 (bit 0) and 0xDF (bit 31).
The EFI_FIRMWARE_VOLUME_EXT_ENTRY_USED_SIZE_TYPE can be used to find out how many EFI_FVB2_ERASE_POLA...
EFI_FIRMWARE_VOLUME_EXT_ENTRY Hdr
Standard extension entry, with the type EFI_FV_EXT_TYPE_USED_SIZE_TYPE.
UINT32 UsedSize
The number of bytes of the FV that are in uses.
Entry struture for describing FV extension header.
UINT16 ExtEntryType
Type of the header.
UINT16 ExtEntrySize
Size of this header extension.
UINT32 Length
The size of the blocks.
UINT32 NumBlocks
The number of sequential blocks which are of the same size.