\r
#pragma pack(1)\r
\r
+/**\r
+ This protocol can be used on any device handle to obtain generic path/location \r
+ information concerning the physical device or logical device. If the handle does \r
+ not logically map to a physical device, the handle may not necessarily support \r
+ the device path protocol. The device path describes the location of the device \r
+ the handle is for. The size of the Device Path can be determined from the structures \r
+ that make up the Device Path.\r
+**/\r
typedef struct {\r
- UINT8 Type;\r
- UINT8 SubType;\r
- UINT8 Length[2];\r
+ UINT8 Type; ///< 0x01 Hardware Device Path\r
+ ///< 0x02 ACPI Device Path\r
+ ///< 0x03 Messaging Device Path\r
+ ///< 0x04 Media Device Path\r
+ ///< 0x05 BIOS Boot Specification Device Path\r
+ ///< 0x7F End of Hardware Device Path\r
+ \r
+ UINT8 SubType; ///< Varies by Type\r
+ ///< 0xFF End Entire Device Path, or\r
+ ///< 0x01 End This Instance of a Device Path and start a new\r
+ ///< Device Path\r
+ \r
+ UINT8 Length[2]; ///< Specific Device Path data. Type and Sub-Type define\r
+ ///< type of data. Size of data is included in Length.\r
+ \r
} EFI_DEVICE_PATH_PROTOCOL;\r
\r
///\r
///\r
/// Optional variable length _HIDSTR\r
/// Optional variable length _UIDSTR\r
+ /// Optional variable length _CIDSTR\r
///\r
} ACPI_EXTENDED_HID_DEVICE_PATH;\r
\r