X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=MdePkg%2FInclude%2FIndustryStandard%2FElTorito.h;h=d8b1c27dfbe42e61911d5095419acac87a56243e;hb=1833218d9313d29499afdd81203decb9b5d9bf07;hp=b474dc9ba14768b5475b21e7ce66d218181c9b66;hpb=3052ec6b91ad4d7038d3f9a21f6da4fd260e4cc7;p=mirror_edk2.git diff --git a/MdePkg/Include/IndustryStandard/ElTorito.h b/MdePkg/Include/IndustryStandard/ElTorito.h index b474dc9ba1..d8b1c27dfb 100644 --- a/MdePkg/Include/IndustryStandard/ElTorito.h +++ b/MdePkg/Include/IndustryStandard/ElTorito.h @@ -19,9 +19,9 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. #ifndef _ELTORITO_H_ #define _ELTORITO_H_ -/// -/// CDROM_VOLUME_DESCRIPTOR.Types, defined in ISO 9660 -/// +// +// CDROM_VOLUME_DESCRIPTOR.Types, defined in ISO 9660 +// #define CDVOL_TYPE_STANDARD 0x0 #define CDVOL_TYPE_CODED 0x1 #define CDVOL_TYPE_END 0xFF @@ -58,12 +58,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. #pragma pack(1) /// -/// El Torito Volume Descriptor -/// Note that the CDROM_VOLUME_DESCRIPTOR does not match the ISO-9660 -/// descriptor. For some reason descriptor used by El Torito is -/// different, but they start the same. The El Torito descriptor -/// is left shifted 1 byte starting with the SystemId. (Note this -/// causes the field to get unaligned) +/// CD-ROM Volume Descriptor /// typedef union { struct { @@ -72,6 +67,9 @@ typedef union { CHAR8 Reserved[82]; } Unknown; + /// + /// Boot Record Volume Descriptor, defined in "El Torito" Specification. + /// struct { UINT8 Type; ///< Must be 0 CHAR8 Id[5]; ///< "CD001" @@ -81,7 +79,10 @@ typedef union { UINT8 EltCatalog[4]; ///< Absolute pointer to first sector of Boot Catalog CHAR8 Unused2[13]; ///< Must be 0 } BootRecordVolume; - + + /// + /// Primary Volumn Descriptor, defined in ISO 9660. + /// struct { UINT8 Type; CHAR8 Id[5]; ///< "CD001" @@ -107,7 +108,7 @@ typedef union { /// Catalog validation entry (Catalog header) /// struct { - UINT8 Indicator; + UINT8 Indicator; ///< Must be 01 UINT8 PlatformId; UINT16 Reserved; CHAR8 ManufacId[24]; @@ -119,12 +120,12 @@ typedef union { /// Initial/Default Entry or Section Entry /// struct { - UINT8 Indicator; + UINT8 Indicator; ///< 88 = Bootable, 00 = Not Bootable UINT8 MediaType : 4; - UINT8 Reserved1 : 4; + UINT8 Reserved1 : 4; ///< Must be 0 UINT16 LoadSegment; UINT8 SystemType; - UINT8 Reserved2; + UINT8 Reserved2; ///< Must be 0 UINT16 SectorCount; UINT32 Lba; } Boot; @@ -133,9 +134,9 @@ typedef union { /// Section Header Entry /// struct { - UINT8 Indicator; + UINT8 Indicator; ///< 90 - Header, more header follw, 91 - Final Header UINT8 PlatformId; - UINT16 SectionEntries; + UINT16 SectionEntries; ///< Number of section entries following this header CHAR8 Id[28]; } Section;