iPXE
PartitionInfo.h
Go to the documentation of this file.
1/** @file
2 This file defines the EFI Partition Information Protocol.
3
4 Copyright (c) 2017, Intel Corporation. All rights reserved.<BR>
5 SPDX-License-Identifier: BSD-2-Clause-Patent
6
7 @par Revision Reference:
8 This Protocol is introduced in UEFI Specification 2.7
9
10**/
11
12#pragma once
13
14FILE_LICENCE ( BSD2_PATENT );
15FILE_SECBOOT ( PERMITTED );
16
19
20//
21// EFI Partition Information Protocol GUID value
22//
23#define EFI_PARTITION_INFO_PROTOCOL_GUID \
24 { 0x8cf2f62c, 0xbc9b, 0x4821, { 0x80, 0x8d, 0xec, 0x9e, 0xc4, 0x21, 0xa1, 0xa0 }};
25
26#define EFI_PARTITION_INFO_PROTOCOL_REVISION 0x0001000
27#define PARTITION_TYPE_OTHER 0x00
28#define PARTITION_TYPE_MBR 0x01
29#define PARTITION_TYPE_GPT 0x02
30
31#pragma pack(1)
32
33///
34/// Partition Information Protocol structure.
35///
36typedef struct {
37 //
38 // Set to EFI_PARTITION_INFO_PROTOCOL_REVISION.
39 //
41 //
42 // Partition info type (PARTITION_TYPE_MBR, PARTITION_TYPE_GPT, or PARTITION_TYPE_OTHER).
43 //
45 //
46 // If 1, partition describes an EFI System Partition.
47 //
50 union {
51 ///
52 /// MBR data
53 ///
55 ///
56 /// GPT data
57 ///
59 } Info;
61
62#pragma pack()
63
64///
65/// Partition Information Protocol GUID variable.
66///
unsigned char UINT8
1-byte unsigned value.
unsigned int UINT32
4-byte unsigned value.
Legacy Master Boot Record Format Definition.
EFI_GUID gEfiPartitionInfoProtocolGuid
Partition Information Protocol GUID variable.
GUID EFI_GUID
128-bit buffer containing a unique identifier value.
EFI Guid Partition Table Format Definition.
#define FILE_LICENCE(_licence)
Declare a particular licence as applying to a file.
Definition compiler.h:921
#define FILE_SECBOOT(_status)
Declare a file's UEFI Secure Boot permission status.
Definition compiler.h:951
GPT Partition Entry.
Definition UefiGpt.h:88
Partition Information Protocol structure.
MBR_PARTITION_RECORD Mbr
MBR data.
EFI_PARTITION_ENTRY Gpt
GPT data.
MBR Partition Entry.
Definition Mbr.h:30