diff options
Diffstat (limited to 'contrib/syslinux-4.02/gpxe/src/include/gpxe/efi/Uefi/UefiGpt.h')
-rw-r--r-- | contrib/syslinux-4.02/gpxe/src/include/gpxe/efi/Uefi/UefiGpt.h | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/contrib/syslinux-4.02/gpxe/src/include/gpxe/efi/Uefi/UefiGpt.h b/contrib/syslinux-4.02/gpxe/src/include/gpxe/efi/Uefi/UefiGpt.h new file mode 100644 index 0000000..92c3035 --- /dev/null +++ b/contrib/syslinux-4.02/gpxe/src/include/gpxe/efi/Uefi/UefiGpt.h @@ -0,0 +1,62 @@ +/** @file + EFI Guid Partition Table Format Definition. + + Copyright (c) 2006 - 2008, Intel Corporation + All rights reserved. This program and the accompanying materials + are licensed and made available under the terms and conditions of the BSD License + which accompanies this distribution. The full text of the license may be found at + http://opensource.org/licenses/bsd-license.php + + THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, + WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. + +**/ + +#ifndef __UEFI_GPT_H__ +#define __UEFI_GPT_H__ + +/// +/// The primary GUID Partition Table Header must be +/// located in LBA 1 (i.e., the second logical block). +/// +#define PRIMARY_PART_HEADER_LBA 1 + +/// +/// EFI Partition Table Signature: "EFI PART" +/// +#define EFI_PTAB_HEADER_ID 0x5452415020494645ULL + +#pragma pack(1) + +/// +/// GPT Partition Table Header +/// +typedef struct { + EFI_TABLE_HEADER Header; + EFI_LBA MyLBA; + EFI_LBA AlternateLBA; + EFI_LBA FirstUsableLBA; + EFI_LBA LastUsableLBA; + EFI_GUID DiskGUID; + EFI_LBA PartitionEntryLBA; + UINT32 NumberOfPartitionEntries; + UINT32 SizeOfPartitionEntry; + UINT32 PartitionEntryArrayCRC32; +} EFI_PARTITION_TABLE_HEADER; + +/// +/// GPT Partition Entry +/// +typedef struct { + EFI_GUID PartitionTypeGUID; + EFI_GUID UniquePartitionGUID; + EFI_LBA StartingLBA; + EFI_LBA EndingLBA; + UINT64 Attributes; + CHAR16 PartitionName[36]; +} EFI_PARTITION_ENTRY; + +#pragma pack() +#endif + + |