/*++\r
\r
-Copyright (c) 2004 - 2009, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2004 - 2010, Intel Corporation. All rights reserved.<BR>\r
This program and the accompanying materials \r
are licensed and made available under the terms and conditions of the BSD License \r
which accompanies this distribution. The full text of the license may be found at \r
#define SetDevicePathEndNode(a) { \\r
(a)->Type = END_DEVICE_PATH_TYPE; \\r
(a)->SubType = END_ENTIRE_DEVICE_PATH_SUBTYPE; \\r
- (a)->Length[0] = sizeof(EFI_DEVICE_PATH_PROTOCOL); \\r
+ (a)->Length[0] = (UINT8) sizeof (EFI_DEVICE_PATH_PROTOCOL); \\r
(a)->Length[1] = 0; \\r
}\r
\r
UINT8 DeviceProtocol;\r
} USB_CLASS_DEVICE_PATH;\r
\r
-#if (EFI_SPECIFICATION_VERSION >= 0x00020000)\r
#define MSG_USB_WWID_DP 0x10\r
typedef struct {\r
EFI_DEVICE_PATH_PROTOCOL Header;\r
EFI_DEVICE_PATH_PROTOCOL Header;\r
UINT8 Lun;\r
} DEVICE_LOGICAL_UNIT_DEVICE_PATH;\r
-#endif\r
\r
#define MSG_SATA_DP 0x12\r
typedef struct {\r
UINT32 FlowControlMap;\r
} UART_FLOW_CONTROL_DEVICE_PATH;\r
\r
-#if (EFI_SPECIFICATION_VERSION >= 0x00020000)\r
-\r
#define DEVICE_PATH_MESSAGING_SAS \\r
{ 0xd487ddb4, 0x008b, 0x11d9, {0xaf, 0xdc, 0x00, 0x10, 0x83, 0xff, 0xca, 0x4d} }\r
\r
UINT16 RelativeTargetPort;\r
} SAS_DEVICE_PATH;\r
\r
-#endif\r
-\r
#define MSG_ISCSI_DP 0x13\r
typedef struct {\r
EFI_DEVICE_PATH_PROTOCOL Header;\r
#define ISCSI_LOGIN_OPTION_CHAP_BI 0x0000\r
#define ISCSI_LOGIN_OPTION_CHAP_UNI 0x2000\r
\r
+///\r
+/// VLAN Device Path SubType.\r
+///\r
+#define MSG_VLAN_DP 0x14\r
+typedef struct {\r
+ EFI_DEVICE_PATH_PROTOCOL Header;\r
+ ///\r
+ /// VLAN identifier (0-4094).\r
+ ///\r
+ UINT16 VlanId;\r
+} VLAN_DEVICE_PATH;\r
+\r
+\r
//\r
// Media Device Path\r
//\r
EFI_GUID Protocol;\r
} MEDIA_PROTOCOL_DEVICE_PATH;\r
\r
-#if (EFI_SPECIFICATION_VERSION >= 0x0002000A)\r
-\r
#define MEDIA_FV_DP 0x07\r
typedef struct {\r
EFI_DEVICE_PATH_PROTOCOL Header;\r
UINT64 StartingOffset;\r
UINT64 EndingOffset;\r
} MEDIA_RELATIVE_OFFSET_RANGE_DEVICE_PATH;\r
-#endif\r
\r
//\r
// BBS Device Path\r
F1394_DEVICE_PATH F1394;\r
USB_DEVICE_PATH Usb;\r
USB_CLASS_DEVICE_PATH UsbClass;\r
- #if (EFI_SPECIFICATION_VERSION >= 0x00020000)\r
USB_WWID_DEVICE_PATH UsbWwid;\r
DEVICE_LOGICAL_UNIT_DEVICE_PATH LogicUnit;\r
- #endif\r
I2O_DEVICE_PATH I2O;\r
MAC_ADDR_DEVICE_PATH MacAddr;\r
IPv4_DEVICE_PATH Ipv4;\r
INFINIBAND_DEVICE_PATH InfiniBand;\r
UART_DEVICE_PATH Uart;\r
UART_FLOW_CONTROL_DEVICE_PATH UartFlowControl;\r
- #if (EFI_SPECIFICATION_VERSION >= 0x00020000)\r
SAS_DEVICE_PATH Sas;\r
- #endif\r
ISCSI_DEVICE_PATH Iscsi;\r
HARDDRIVE_DEVICE_PATH HardDrive;\r
CDROM_DEVICE_PATH CD;\r
FILEPATH_DEVICE_PATH FilePath;\r
MEDIA_PROTOCOL_DEVICE_PATH MediaProtocol;\r
\r
- #if (EFI_SPECIFICATION_VERSION >= 0x0002000A)\r
MEDIA_FW_VOL_DEVICE_PATH PiwgFirmwareVolume;\r
MEDIA_FW_VOL_FILEPATH_DEVICE_PATH PiwgFirmwareFile;\r
MEDIA_RELATIVE_OFFSET_RANGE_DEVICE_PATH\r
Offset;\r
- #endif\r
\r
BBS_BBS_DEVICE_PATH Bbs;\r
} EFI_DEV_PATH;\r
F1394_DEVICE_PATH *F1394;\r
USB_DEVICE_PATH *Usb;\r
USB_CLASS_DEVICE_PATH *UsbClass;\r
- #if (EFI_SPECIFICATION_VERSION >= 0x00020000)\r
USB_WWID_DEVICE_PATH *UsbWwid;\r
DEVICE_LOGICAL_UNIT_DEVICE_PATH *LogicUnit;\r
- #endif\r
I2O_DEVICE_PATH *I2O;\r
MAC_ADDR_DEVICE_PATH *MacAddr;\r
IPv4_DEVICE_PATH *Ipv4;\r
UART_DEVICE_PATH *Uart;\r
UART_FLOW_CONTROL_DEVICE_PATH *UartFlowControl;\r
\r
- #if (EFI_SPECIFICATION_VERSION >= 0x00020000)\r
SAS_DEVICE_PATH *Sas;\r
- #endif\r
ISCSI_DEVICE_PATH *Iscsi;\r
\r
HARDDRIVE_DEVICE_PATH *HardDrive;\r
FILEPATH_DEVICE_PATH *FilePath;\r
MEDIA_PROTOCOL_DEVICE_PATH *MediaProtocol;\r
\r
- #if (EFI_SPECIFICATION_VERSION >= 0x0002000A)\r
MEDIA_FW_VOL_DEVICE_PATH *PiwgFirmwareVolume;\r
MEDIA_FW_VOL_FILEPATH_DEVICE_PATH *PiwgFirmwareFile;\r
- #endif\r
+ MEDIA_RELATIVE_OFFSET_RANGE_DEVICE_PATH\r
+ *Offset;\r
\r
BBS_BBS_DEVICE_PATH *Bbs;\r
UINT8 *Raw;\r