ReactOS 0.4.16-dev-297-gc569aee
DevicePath.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  EFI_DEVICE_PATH_PROTOCOL
 
struct  PCI_DEVICE_PATH
 
struct  PCCARD_DEVICE_PATH
 
struct  MEMMAP_DEVICE_PATH
 
struct  VENDOR_DEVICE_PATH
 
struct  CONTROLLER_DEVICE_PATH
 
struct  ACPI_HID_DEVICE_PATH
 
struct  ACPI_EXTENDED_HID_DEVICE_PATH
 
struct  ACPI_ADR_DEVICE_PATH
 
struct  ATAPI_DEVICE_PATH
 
struct  SCSI_DEVICE_PATH
 
struct  FIBRECHANNEL_DEVICE_PATH
 
struct  FIBRECHANNELEX_DEVICE_PATH
 
struct  F1394_DEVICE_PATH
 
struct  USB_DEVICE_PATH
 
struct  USB_CLASS_DEVICE_PATH
 
struct  USB_WWID_DEVICE_PATH
 
struct  DEVICE_LOGICAL_UNIT_DEVICE_PATH
 
struct  SATA_DEVICE_PATH
 
struct  I2O_DEVICE_PATH
 
struct  MAC_ADDR_DEVICE_PATH
 
struct  IPv4_DEVICE_PATH
 
struct  IPv6_DEVICE_PATH
 
struct  INFINIBAND_DEVICE_PATH
 
struct  UART_DEVICE_PATH
 
struct  UART_FLOW_CONTROL_DEVICE_PATH
 
struct  SAS_DEVICE_PATH
 
struct  SASEX_DEVICE_PATH
 
struct  ISCSI_DEVICE_PATH
 
struct  VLAN_DEVICE_PATH
 
struct  HARDDRIVE_DEVICE_PATH
 
struct  CDROM_DEVICE_PATH
 
struct  FILEPATH_DEVICE_PATH
 
struct  MEDIA_PROTOCOL_DEVICE_PATH
 
struct  MEDIA_FW_VOL_FILEPATH_DEVICE_PATH
 
struct  MEDIA_FW_VOL_DEVICE_PATH
 
struct  MEDIA_RELATIVE_OFFSET_RANGE_DEVICE_PATH
 
struct  BBS_BBS_DEVICE_PATH
 
union  EFI_DEV_PATH
 
union  EFI_DEV_PATH_PTR
 

Macros

#define EFI_DEVICE_PATH_PROTOCOL_GUID
 
#define DEVICE_PATH_PROTOCOL   EFI_DEVICE_PATH_PROTOCOL_GUID
 
#define HARDWARE_DEVICE_PATH   0x01
 
#define HW_PCI_DP   0x01
 
#define HW_PCCARD_DP   0x02
 
#define HW_MEMMAP_DP   0x03
 
#define HW_VENDOR_DP   0x04
 
#define HW_CONTROLLER_DP   0x05
 
#define ACPI_DEVICE_PATH   0x02
 
#define ACPI_DP   0x01
 
#define ACPI_EXTENDED_DP   0x02
 
#define PNP_EISA_ID_CONST   0x41d0
 
#define EISA_ID(_Name, _Num)   ((UINT32)((_Name) | (_Num) << 16))
 
#define EISA_PNP_ID(_PNPId)   (EISA_ID(PNP_EISA_ID_CONST, (_PNPId)))
 
#define EFI_PNP_ID(_PNPId)   (EISA_ID(PNP_EISA_ID_CONST, (_PNPId)))
 
#define PNP_EISA_ID_MASK   0xffff
 
#define EISA_ID_TO_NUM(_Id)   ((_Id) >> 16)
 
#define ACPI_ADR_DP   0x03
 
#define ACPI_ADR_DISPLAY_TYPE_OTHER   0
 
#define ACPI_ADR_DISPLAY_TYPE_VGA   1
 
#define ACPI_ADR_DISPLAY_TYPE_TV   2
 
#define ACPI_ADR_DISPLAY_TYPE_EXTERNAL_DIGITAL   3
 
#define ACPI_ADR_DISPLAY_TYPE_INTERNAL_DIGITAL   4
 
#define ACPI_DISPLAY_ADR(_DeviceIdScheme, _HeadId, _NonVgaOutput, _BiosCanDetect, _VendorInfo, _Type, _Port, _Index)
 
#define MESSAGING_DEVICE_PATH   0x03
 
#define MSG_ATAPI_DP   0x01
 
#define MSG_SCSI_DP   0x02
 
#define MSG_FIBRECHANNEL_DP   0x03
 
#define MSG_FIBRECHANNELEX_DP   0x15
 
#define MSG_1394_DP   0x04
 
#define MSG_USB_DP   0x05
 
#define MSG_USB_CLASS_DP   0x0f
 
#define MSG_USB_WWID_DP   0x10
 
#define MSG_DEVICE_LOGICAL_UNIT_DP   0x11
 
#define MSG_SATA_DP   0x12
 
#define SATA_HBA_DIRECT_CONNECT_FLAG   0x8000
 
#define MSG_I2O_DP   0x06
 
#define MSG_MAC_ADDR_DP   0x0b
 
#define MSG_IPv4_DP   0x0c
 
#define MSG_IPv6_DP   0x0d
 
#define MSG_INFINIBAND_DP   0x09
 
#define INFINIBAND_RESOURCE_FLAG_IOC_SERVICE   0x01
 
#define INFINIBAND_RESOURCE_FLAG_EXTENDED_BOOT_ENVIRONMENT   0x02
 
#define INFINIBAND_RESOURCE_FLAG_CONSOLE_PROTOCOL   0x04
 
#define INFINIBAND_RESOURCE_FLAG_STORAGE_PROTOCOL   0x08
 
#define INFINIBAND_RESOURCE_FLAG_NETWORK_PROTOCOL   0x10
 
#define MSG_UART_DP   0x0e
 
#define MSG_VENDOR_DP   0x0a
 
#define DEVICE_PATH_MESSAGING_PC_ANSI   EFI_PC_ANSI_GUID
 
#define DEVICE_PATH_MESSAGING_VT_100   EFI_VT_100_GUID
 
#define DEVICE_PATH_MESSAGING_VT_100_PLUS   EFI_VT_100_PLUS_GUID
 
#define DEVICE_PATH_MESSAGING_VT_UTF8   EFI_VT_UTF8_GUID
 
#define UART_FLOW_CONTROL_HARDWARE   0x00000001
 
#define UART_FLOW_CONTROL_XON_XOFF   0x00000010
 
#define DEVICE_PATH_MESSAGING_SAS   EFI_SAS_DEVICE_PATH_GUID
 
#define MSG_SASEX_DP   0x16
 
#define MSG_ISCSI_DP   0x13
 
#define ISCSI_LOGIN_OPTION_NO_HEADER_DIGEST   0x0000
 
#define ISCSI_LOGIN_OPTION_HEADER_DIGEST_USING_CRC32C   0x0002
 
#define ISCSI_LOGIN_OPTION_NO_DATA_DIGEST   0x0000
 
#define ISCSI_LOGIN_OPTION_DATA_DIGEST_USING_CRC32C   0x0008
 
#define ISCSI_LOGIN_OPTION_AUTHMETHOD_CHAP   0x0000
 
#define ISCSI_LOGIN_OPTION_AUTHMETHOD_NON   0x1000
 
#define ISCSI_LOGIN_OPTION_CHAP_BI   0x0000
 
#define ISCSI_LOGIN_OPTION_CHAP_UNI   0x2000
 
#define MSG_VLAN_DP   0x14
 
#define MEDIA_DEVICE_PATH   0x04
 
#define MEDIA_HARDDRIVE_DP   0x01
 
#define MBR_TYPE_PCAT   0x01
 
#define MBR_TYPE_EFI_PARTITION_TABLE_HEADER   0x02
 
#define NO_DISK_SIGNATURE   0x00
 
#define SIGNATURE_TYPE_MBR   0x01
 
#define SIGNATURE_TYPE_GUID   0x02
 
#define MEDIA_CDROM_DP   0x02
 
#define MEDIA_VENDOR_DP   0x03
 Media vendor device path subtype.
 
#define MEDIA_FILEPATH_DP   0x04
 
#define SIZE_OF_FILEPATH_DEVICE_PATH   OFFSET_OF(FILEPATH_DEVICE_PATH,PathName)
 
#define MEDIA_PROTOCOL_DP   0x05
 
#define MEDIA_PIWG_FW_FILE_DP   0x06
 
#define MEDIA_PIWG_FW_VOL_DP   0x07
 
#define MEDIA_RELATIVE_OFFSET_RANGE_DP   0x08
 
#define BBS_DEVICE_PATH   0x05
 
#define BBS_BBS_DP   0x01
 
#define BBS_TYPE_FLOPPY   0x01
 
#define BBS_TYPE_HARDDRIVE   0x02
 
#define BBS_TYPE_CDROM   0x03
 
#define BBS_TYPE_PCMCIA   0x04
 
#define BBS_TYPE_USB   0x05
 
#define BBS_TYPE_EMBEDDED_NETWORK   0x06
 
#define BBS_TYPE_BEV   0x80
 
#define BBS_TYPE_UNKNOWN   0xFF
 
#define END_DEVICE_PATH_TYPE   0x7f
 
#define END_ENTIRE_DEVICE_PATH_SUBTYPE   0xFF
 
#define END_INSTANCE_DEVICE_PATH_SUBTYPE   0x01
 

Typedefs

typedef EFI_DEVICE_PATH_PROTOCOL EFI_DEVICE_PATH
 
typedef VENDOR_DEVICE_PATH VENDOR_DEFINED_DEVICE_PATH
 

Functions

FORCEINLINE UINT8 DevicePathType (_In_ PVOID Node)
 
FORCEINLINE UINT8 DevicePathSubType (_In_ PVOID Node)
 
FORCEINLINE UINTN DevicePathNodeLength (_In_ PVOID Node)
 
FORCEINLINE EFI_DEVICE_PATH_PROTOCOLNextDevicePathNode (_In_ PVOID Node)
 
FORCEINLINE BOOLEAN IsDevicePathEndType (_In_ PVOID Node)
 
FORCEINLINE BOOLEAN IsDevicePathEnd (_In_ PVOID Node)
 

Variables

EFI_GUID gEfiDevicePathProtocolGuid
 

Detailed Description

The device path protocol as defined in UEFI 2.0.

The device path represents a programmatic path to a device, from a software point of view. The path must persist from boot to boot, so it can not contain things like PCI bus numbers that change from boot to boot.

Copyright (c) 2006 - 2011, 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 that 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.

Definition in file DevicePath.h.

Macro Definition Documentation

◆ ACPI_ADR_DISPLAY_TYPE_EXTERNAL_DIGITAL

#define ACPI_ADR_DISPLAY_TYPE_EXTERNAL_DIGITAL   3

Definition at line 272 of file DevicePath.h.

◆ ACPI_ADR_DISPLAY_TYPE_INTERNAL_DIGITAL

#define ACPI_ADR_DISPLAY_TYPE_INTERNAL_DIGITAL   4

Definition at line 273 of file DevicePath.h.

◆ ACPI_ADR_DISPLAY_TYPE_OTHER

#define ACPI_ADR_DISPLAY_TYPE_OTHER   0

Definition at line 269 of file DevicePath.h.

◆ ACPI_ADR_DISPLAY_TYPE_TV

#define ACPI_ADR_DISPLAY_TYPE_TV   2

Definition at line 271 of file DevicePath.h.

◆ ACPI_ADR_DISPLAY_TYPE_VGA

#define ACPI_ADR_DISPLAY_TYPE_VGA   1

Definition at line 270 of file DevicePath.h.

◆ ACPI_ADR_DP

#define ACPI_ADR_DP   0x03

ACPI _ADR Device Path SubType.

Definition at line 249 of file DevicePath.h.

◆ ACPI_DEVICE_PATH

#define ACPI_DEVICE_PATH   0x02

ACPI Device Paths.

Definition at line 175 of file DevicePath.h.

◆ ACPI_DISPLAY_ADR

#define ACPI_DISPLAY_ADR (   _DeviceIdScheme,
  _HeadId,
  _NonVgaOutput,
  _BiosCanDetect,
  _VendorInfo,
  _Type,
  _Port,
  _Index 
)
Value:
((UINT32) ((((_DeviceIdScheme) & 0x1) << 31) | \
(((_HeadId) & 0x7) << 18) | \
(((_NonVgaOutput) & 0x1) << 17) | \
(((_BiosCanDetect) & 0x1) << 16) | \
(((_VendorInfo) & 0xf) << 12) | \
(((_Type) & 0xf) << 8) | \
(((_Port) & 0xf) << 4) | \
((_Index) & 0xf)))
unsigned int UINT32

Definition at line 275 of file DevicePath.h.

◆ ACPI_DP

#define ACPI_DP   0x01

ACPI Device Path SubType.

Definition at line 180 of file DevicePath.h.

◆ ACPI_EXTENDED_DP

#define ACPI_EXTENDED_DP   0x02

Expanded ACPI Device Path SubType.

Definition at line 202 of file DevicePath.h.

◆ BBS_BBS_DP

#define BBS_BBS_DP   0x01

BIOS Boot Specification Device Path SubType.

Definition at line 1015 of file DevicePath.h.

◆ BBS_DEVICE_PATH

#define BBS_DEVICE_PATH   0x05

BIOS Boot Specification Device Path.

Definition at line 1010 of file DevicePath.h.

◆ BBS_TYPE_BEV

#define BBS_TYPE_BEV   0x80

Definition at line 1045 of file DevicePath.h.

◆ BBS_TYPE_CDROM

#define BBS_TYPE_CDROM   0x03

Definition at line 1041 of file DevicePath.h.

◆ BBS_TYPE_EMBEDDED_NETWORK

#define BBS_TYPE_EMBEDDED_NETWORK   0x06

Definition at line 1044 of file DevicePath.h.

◆ BBS_TYPE_FLOPPY

#define BBS_TYPE_FLOPPY   0x01

Definition at line 1039 of file DevicePath.h.

◆ BBS_TYPE_HARDDRIVE

#define BBS_TYPE_HARDDRIVE   0x02

Definition at line 1040 of file DevicePath.h.

◆ BBS_TYPE_PCMCIA

#define BBS_TYPE_PCMCIA   0x04

Definition at line 1042 of file DevicePath.h.

◆ BBS_TYPE_UNKNOWN

#define BBS_TYPE_UNKNOWN   0xFF

Definition at line 1046 of file DevicePath.h.

◆ BBS_TYPE_USB

#define BBS_TYPE_USB   0x05

Definition at line 1043 of file DevicePath.h.

◆ DEVICE_PATH_MESSAGING_PC_ANSI

#define DEVICE_PATH_MESSAGING_PC_ANSI   EFI_PC_ANSI_GUID

Definition at line 705 of file DevicePath.h.

◆ DEVICE_PATH_MESSAGING_SAS

#define DEVICE_PATH_MESSAGING_SAS   EFI_SAS_DEVICE_PATH_GUID

Definition at line 732 of file DevicePath.h.

◆ DEVICE_PATH_MESSAGING_VT_100

#define DEVICE_PATH_MESSAGING_VT_100   EFI_VT_100_GUID

Definition at line 706 of file DevicePath.h.

◆ DEVICE_PATH_MESSAGING_VT_100_PLUS

#define DEVICE_PATH_MESSAGING_VT_100_PLUS   EFI_VT_100_PLUS_GUID

Definition at line 707 of file DevicePath.h.

◆ DEVICE_PATH_MESSAGING_VT_UTF8

#define DEVICE_PATH_MESSAGING_VT_UTF8   EFI_VT_UTF8_GUID

Definition at line 708 of file DevicePath.h.

◆ DEVICE_PATH_PROTOCOL

#define DEVICE_PATH_PROTOCOL   EFI_DEVICE_PATH_PROTOCOL_GUID

Device Path guid definition for backward-compatible with EFI1.1.

Definition at line 35 of file DevicePath.h.

◆ EFI_DEVICE_PATH_PROTOCOL_GUID

#define EFI_DEVICE_PATH_PROTOCOL_GUID
Value:
{ \
0x9576e91, 0x6d3f, 0x11d2, { 0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b } \
}

Device Path protocol.

Definition at line 27 of file DevicePath.h.

◆ EFI_PNP_ID

#define EFI_PNP_ID (   _PNPId)    (EISA_ID(PNP_EISA_ID_CONST, (_PNPId)))

Definition at line 241 of file DevicePath.h.

◆ EISA_ID

#define EISA_ID (   _Name,
  _Num 
)    ((UINT32)((_Name) | (_Num) << 16))

Definition at line 239 of file DevicePath.h.

◆ EISA_ID_TO_NUM

#define EISA_ID_TO_NUM (   _Id)    ((_Id) >> 16)

Definition at line 244 of file DevicePath.h.

◆ EISA_PNP_ID

#define EISA_PNP_ID (   _PNPId)    (EISA_ID(PNP_EISA_ID_CONST, (_PNPId)))

Definition at line 240 of file DevicePath.h.

◆ END_DEVICE_PATH_TYPE

#define END_DEVICE_PATH_TYPE   0x7f

Definition at line 1151 of file DevicePath.h.

◆ END_ENTIRE_DEVICE_PATH_SUBTYPE

#define END_ENTIRE_DEVICE_PATH_SUBTYPE   0xFF

Definition at line 1152 of file DevicePath.h.

◆ END_INSTANCE_DEVICE_PATH_SUBTYPE

#define END_INSTANCE_DEVICE_PATH_SUBTYPE   0x01

Definition at line 1153 of file DevicePath.h.

◆ HARDWARE_DEVICE_PATH

#define HARDWARE_DEVICE_PATH   0x01

Hardware Device Paths.

Definition at line 73 of file DevicePath.h.

◆ HW_CONTROLLER_DP

#define HW_CONTROLLER_DP   0x05

Controller Device Path SubType.

Definition at line 159 of file DevicePath.h.

◆ HW_MEMMAP_DP

#define HW_MEMMAP_DP   0x03

Memory Mapped Device Path SubType.

Definition at line 114 of file DevicePath.h.

◆ HW_PCCARD_DP

#define HW_PCCARD_DP   0x02

PCCARD Device Path SubType.

Definition at line 98 of file DevicePath.h.

◆ HW_PCI_DP

#define HW_PCI_DP   0x01

PCI Device Path SubType.

Definition at line 78 of file DevicePath.h.

◆ HW_VENDOR_DP

#define HW_VENDOR_DP   0x04

Hardware Vendor Device Path SubType.

Definition at line 138 of file DevicePath.h.

◆ INFINIBAND_RESOURCE_FLAG_CONSOLE_PROTOCOL

#define INFINIBAND_RESOURCE_FLAG_CONSOLE_PROTOCOL   0x04

Definition at line 655 of file DevicePath.h.

◆ INFINIBAND_RESOURCE_FLAG_EXTENDED_BOOT_ENVIRONMENT

#define INFINIBAND_RESOURCE_FLAG_EXTENDED_BOOT_ENVIRONMENT   0x02

Definition at line 654 of file DevicePath.h.

◆ INFINIBAND_RESOURCE_FLAG_IOC_SERVICE

#define INFINIBAND_RESOURCE_FLAG_IOC_SERVICE   0x01

Definition at line 653 of file DevicePath.h.

◆ INFINIBAND_RESOURCE_FLAG_NETWORK_PROTOCOL

#define INFINIBAND_RESOURCE_FLAG_NETWORK_PROTOCOL   0x10

Definition at line 657 of file DevicePath.h.

◆ INFINIBAND_RESOURCE_FLAG_STORAGE_PROTOCOL

#define INFINIBAND_RESOURCE_FLAG_STORAGE_PROTOCOL   0x08

Definition at line 656 of file DevicePath.h.

◆ ISCSI_LOGIN_OPTION_AUTHMETHOD_CHAP

#define ISCSI_LOGIN_OPTION_AUTHMETHOD_CHAP   0x0000

Definition at line 822 of file DevicePath.h.

◆ ISCSI_LOGIN_OPTION_AUTHMETHOD_NON

#define ISCSI_LOGIN_OPTION_AUTHMETHOD_NON   0x1000

Definition at line 823 of file DevicePath.h.

◆ ISCSI_LOGIN_OPTION_CHAP_BI

#define ISCSI_LOGIN_OPTION_CHAP_BI   0x0000

Definition at line 824 of file DevicePath.h.

◆ ISCSI_LOGIN_OPTION_CHAP_UNI

#define ISCSI_LOGIN_OPTION_CHAP_UNI   0x2000

Definition at line 825 of file DevicePath.h.

◆ ISCSI_LOGIN_OPTION_DATA_DIGEST_USING_CRC32C

#define ISCSI_LOGIN_OPTION_DATA_DIGEST_USING_CRC32C   0x0008

Definition at line 821 of file DevicePath.h.

◆ ISCSI_LOGIN_OPTION_HEADER_DIGEST_USING_CRC32C

#define ISCSI_LOGIN_OPTION_HEADER_DIGEST_USING_CRC32C   0x0002

Definition at line 819 of file DevicePath.h.

◆ ISCSI_LOGIN_OPTION_NO_DATA_DIGEST

#define ISCSI_LOGIN_OPTION_NO_DATA_DIGEST   0x0000

Definition at line 820 of file DevicePath.h.

◆ ISCSI_LOGIN_OPTION_NO_HEADER_DIGEST

#define ISCSI_LOGIN_OPTION_NO_HEADER_DIGEST   0x0000

Definition at line 818 of file DevicePath.h.

◆ MBR_TYPE_EFI_PARTITION_TABLE_HEADER

#define MBR_TYPE_EFI_PARTITION_TABLE_HEADER   0x02

Definition at line 893 of file DevicePath.h.

◆ MBR_TYPE_PCAT

#define MBR_TYPE_PCAT   0x01

Definition at line 892 of file DevicePath.h.

◆ MEDIA_CDROM_DP

#define MEDIA_CDROM_DP   0x02

CD-ROM Media Device Path SubType.

Definition at line 902 of file DevicePath.h.

◆ MEDIA_DEVICE_PATH

#define MEDIA_DEVICE_PATH   0x04

Definition at line 842 of file DevicePath.h.

◆ MEDIA_FILEPATH_DP

#define MEDIA_FILEPATH_DP   0x04

File Path Media Device Path SubType

Definition at line 931 of file DevicePath.h.

◆ MEDIA_HARDDRIVE_DP

#define MEDIA_HARDDRIVE_DP   0x01

Hard Drive Media Device Path SubType.

Definition at line 847 of file DevicePath.h.

◆ MEDIA_PIWG_FW_FILE_DP

#define MEDIA_PIWG_FW_FILE_DP   0x06

PIWG Firmware File SubType.

Definition at line 963 of file DevicePath.h.

◆ MEDIA_PIWG_FW_VOL_DP

#define MEDIA_PIWG_FW_VOL_DP   0x07

PIWG Firmware Volume Device Path SubType.

Definition at line 979 of file DevicePath.h.

◆ MEDIA_PROTOCOL_DP

#define MEDIA_PROTOCOL_DP   0x05

Media Protocol Device Path SubType.

Definition at line 945 of file DevicePath.h.

◆ MEDIA_RELATIVE_OFFSET_RANGE_DP

#define MEDIA_RELATIVE_OFFSET_RANGE_DP   0x08

Media relative offset range device path.

Definition at line 995 of file DevicePath.h.

◆ MEDIA_VENDOR_DP

#define MEDIA_VENDOR_DP   0x03

Media vendor device path subtype.

Definition at line 926 of file DevicePath.h.

◆ MESSAGING_DEVICE_PATH

#define MESSAGING_DEVICE_PATH   0x03

Messaging Device Paths. This Device Path is used to describe the connection of devices outside the resource domain of the system. This Device Path can describe physical messaging information like SCSI ID, or abstract information like networking protocol IP addresses.

Definition at line 291 of file DevicePath.h.

◆ MSG_1394_DP

#define MSG_1394_DP   0x04

1394 Device Path SubType

Definition at line 372 of file DevicePath.h.

◆ MSG_ATAPI_DP

#define MSG_ATAPI_DP   0x01

ATAPI Device Path SubType

Definition at line 296 of file DevicePath.h.

◆ MSG_DEVICE_LOGICAL_UNIT_DP

#define MSG_DEVICE_LOGICAL_UNIT_DP   0x11

Device Logical Unit SubType.

Definition at line 468 of file DevicePath.h.

◆ MSG_FIBRECHANNEL_DP

#define MSG_FIBRECHANNEL_DP   0x03

Fibre Channel SubType.

Definition at line 332 of file DevicePath.h.

◆ MSG_FIBRECHANNELEX_DP

#define MSG_FIBRECHANNELEX_DP   0x15

Fibre Channel Ex SubType.

Definition at line 352 of file DevicePath.h.

◆ MSG_I2O_DP

#define MSG_I2O_DP   0x06

I2O Device Path SubType.

Definition at line 508 of file DevicePath.h.

◆ MSG_INFINIBAND_DP

#define MSG_INFINIBAND_DP   0x09

InfiniBand Device Path SubType.

Definition at line 621 of file DevicePath.h.

◆ MSG_IPv4_DP

#define MSG_IPv4_DP   0x0c

IPv4 Device Path SubType

Definition at line 536 of file DevicePath.h.

◆ MSG_IPv6_DP

#define MSG_IPv6_DP   0x0d

IPv6 Device Path SubType.

Definition at line 577 of file DevicePath.h.

◆ MSG_ISCSI_DP

#define MSG_ISCSI_DP   0x13

iSCSI Device Path SubType

Definition at line 791 of file DevicePath.h.

◆ MSG_MAC_ADDR_DP

#define MSG_MAC_ADDR_DP   0x0b

MAC Address Device Path SubType.

Definition at line 520 of file DevicePath.h.

◆ MSG_SASEX_DP

#define MSG_SASEX_DP   0x16

Serial Attached SCSI (SAS) Ex Device Path SubType

Definition at line 767 of file DevicePath.h.

◆ MSG_SATA_DP

#define MSG_SATA_DP   0x12

SATA Device Path SubType.

Definition at line 480 of file DevicePath.h.

◆ MSG_SCSI_DP

#define MSG_SCSI_DP   0x02

SCSI Device Path SubType.

Definition at line 316 of file DevicePath.h.

◆ MSG_UART_DP

#define MSG_UART_DP   0x0e

UART Device Path SubType.

Definition at line 662 of file DevicePath.h.

◆ MSG_USB_CLASS_DP

#define MSG_USB_CLASS_DP   0x0f

USB Class Device Path SubType.

Definition at line 404 of file DevicePath.h.

◆ MSG_USB_DP

#define MSG_USB_DP   0x05

USB Device Path SubType.

Definition at line 388 of file DevicePath.h.

◆ MSG_USB_WWID_DP

#define MSG_USB_WWID_DP   0x10

USB WWID Device Path SubType.

Definition at line 437 of file DevicePath.h.

◆ MSG_VENDOR_DP

#define MSG_VENDOR_DP   0x0a

Definition at line 702 of file DevicePath.h.

◆ MSG_VLAN_DP

#define MSG_VLAN_DP   0x14

VLAN Device Path SubType.

Definition at line 830 of file DevicePath.h.

◆ NO_DISK_SIGNATURE

#define NO_DISK_SIGNATURE   0x00

Definition at line 895 of file DevicePath.h.

◆ PNP_EISA_ID_CONST

#define PNP_EISA_ID_CONST   0x41d0

Definition at line 238 of file DevicePath.h.

◆ PNP_EISA_ID_MASK

#define PNP_EISA_ID_MASK   0xffff

Definition at line 243 of file DevicePath.h.

◆ SATA_HBA_DIRECT_CONNECT_FLAG

#define SATA_HBA_DIRECT_CONNECT_FLAG   0x8000

Flag for if the device is directly connected to the HBA.

Definition at line 503 of file DevicePath.h.

◆ SIGNATURE_TYPE_GUID

#define SIGNATURE_TYPE_GUID   0x02

Definition at line 897 of file DevicePath.h.

◆ SIGNATURE_TYPE_MBR

#define SIGNATURE_TYPE_MBR   0x01

Definition at line 896 of file DevicePath.h.

◆ SIZE_OF_FILEPATH_DEVICE_PATH

#define SIZE_OF_FILEPATH_DEVICE_PATH   OFFSET_OF(FILEPATH_DEVICE_PATH,PathName)

Definition at line 940 of file DevicePath.h.

◆ UART_FLOW_CONTROL_HARDWARE

#define UART_FLOW_CONTROL_HARDWARE   0x00000001

Definition at line 729 of file DevicePath.h.

◆ UART_FLOW_CONTROL_XON_XOFF

#define UART_FLOW_CONTROL_XON_XOFF   0x00000010

Definition at line 730 of file DevicePath.h.

Typedef Documentation

◆ EFI_DEVICE_PATH

Device Path protocol definition for backward-compatible with EFI1.1.

Definition at line 68 of file DevicePath.h.

◆ VENDOR_DEFINED_DEVICE_PATH

Definition at line 703 of file DevicePath.h.

Function Documentation

◆ DevicePathNodeLength()

FORCEINLINE UINTN DevicePathNodeLength ( _In_ PVOID  Node)

Definition at line 1179 of file DevicePath.h.

1182{
1183 //ASSERT(Node != NULL);
1184 return *((UINT16 *) &((EFI_DEVICE_PATH_PROTOCOL *) (Node))->Length[0]);
1185}
unsigned short UINT16
union node Node
Definition: types.h:1255

Referenced by EfiInitpConvertEfiFilePath(), EfiIsDevicePathParent(), and NextDevicePathNode().

◆ DevicePathSubType()

FORCEINLINE UINT8 DevicePathSubType ( _In_ PVOID  Node)

Definition at line 1169 of file DevicePath.h.

1172{
1173 //ASSERT(Node != NULL);
1174 return ((EFI_DEVICE_PATH_PROTOCOL *) (Node))->SubType;
1175}
Definition: dlist.c:348

Referenced by IsDevicePathEnd().

◆ DevicePathType()

FORCEINLINE UINT8 DevicePathType ( _In_ PVOID  Node)

Definition at line 1159 of file DevicePath.h.

1162{
1163 //ASSERT(Node != NULL);
1164 return ((EFI_DEVICE_PATH_PROTOCOL *) (Node))->Type;
1165}

Referenced by IsDevicePathEndType().

◆ IsDevicePathEnd()

FORCEINLINE BOOLEAN IsDevicePathEnd ( _In_ PVOID  Node)

Definition at line 1209 of file DevicePath.h.

1212{
1213 //ASSERT(Node != NULL);
1215}
#define END_ENTIRE_DEVICE_PATH_SUBTYPE
Definition: DevicePath.h:1152
FORCEINLINE UINT8 DevicePathSubType(_In_ PVOID Node)
Definition: DevicePath.h:1169
FORCEINLINE BOOLEAN IsDevicePathEndType(_In_ PVOID Node)
Definition: DevicePath.h:1199
unsigned char BOOLEAN

◆ IsDevicePathEndType()

FORCEINLINE BOOLEAN IsDevicePathEndType ( _In_ PVOID  Node)

Definition at line 1199 of file DevicePath.h.

1202{
1203 //ASSERT(Node != NULL);
1205}
FORCEINLINE UINT8 DevicePathType(_In_ PVOID Node)
Definition: DevicePath.h:1159
#define END_DEVICE_PATH_TYPE
Definition: DevicePath.h:1151

Referenced by EfiGetLeafNode(), EfiInitpConvertEfiFilePath(), EfiInitpGetDeviceNode(), EfiIsDevicePathParent(), and IsDevicePathEnd().

◆ NextDevicePathNode()

FORCEINLINE EFI_DEVICE_PATH_PROTOCOL * NextDevicePathNode ( _In_ PVOID  Node)

Definition at line 1189 of file DevicePath.h.

1192{
1193 //ASSERT(Node != NULL);
1195}
FORCEINLINE UINTN DevicePathNodeLength(_In_ PVOID Node)
Definition: DevicePath.h:1179
unsigned char UINT8

Referenced by EfiGetLeafNode(), EfiInitpConvertEfiFilePath(), EfiInitpGetDeviceNode(), and EfiIsDevicePathParent().

Variable Documentation

◆ gEfiDevicePathProtocolGuid

EFI_GUID gEfiDevicePathProtocolGuid
extern