MdePkg/Include/Protocol/DevicePath.h File Reference


Data Structures

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  BMC_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  NVME_NAMESPACE_DEVICE_PATH
struct  URI_DEVICE_PATH
struct  UFS_DEVICE_PATH
struct  SD_DEVICE_PATH
struct  ISCSI_DEVICE_PATH
struct  VLAN_DEVICE_PATH
struct  BLUETOOTH_DEVICE_PATH
struct  WIFI_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  MEDIA_RAM_DISK_DEVICE_PATH
struct  BBS_BBS_DEVICE_PATH
union  EFI_DEV_PATH
union  EFI_DEV_PATH_PTR

Defines

#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 HW_BMC_DP   0x06
#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_NVME_NAMESPACE_DP   0x17
#define MSG_URI_DP   0x18
#define MSG_UFS_DP   0x19
#define MSG_SD_DP   0x1A
#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 MSG_BLUETOOTH_DP   0x1b
#define MSG_WIFI_DP   0x1C
#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 EFI_VIRTUAL_DISK_GUID   EFI_ACPI_6_0_NFIT_GUID_RAM_DISK_SUPPORTING_VIRTUAL_DISK_REGION_VOLATILE
#define EFI_VIRTUAL_CD_GUID   EFI_ACPI_6_0_NFIT_GUID_RAM_DISK_SUPPORTING_VIRTUAL_CD_REGION_VOLATILE
#define EFI_PERSISTENT_VIRTUAL_DISK_GUID   EFI_ACPI_6_0_NFIT_GUID_RAM_DISK_SUPPORTING_VIRTUAL_DISK_REGION_PERSISTENT
#define EFI_PERSISTENT_VIRTUAL_CD_GUID   EFI_ACPI_6_0_NFIT_GUID_RAM_DISK_SUPPORTING_VIRTUAL_CD_REGION_PERSISTENT
#define MEDIA_RAM_DISK_DP   0x09
#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

Variables

EFI_GUID gEfiVirtualDiskGuid
EFI_GUID gEfiVirtualCdGuid
EFI_GUID gEfiPersistentVirtualDiskGuid
EFI_GUID gEfiPersistentVirtualCdGuid
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 - 2015, 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.


Define Documentation

#define ACPI_ADR_DISPLAY_TYPE_EXTERNAL_DIGITAL   3

#define ACPI_ADR_DISPLAY_TYPE_INTERNAL_DIGITAL   4

#define ACPI_ADR_DISPLAY_TYPE_OTHER   0

#define ACPI_ADR_DISPLAY_TYPE_TV   2

#define ACPI_ADR_DISPLAY_TYPE_VGA   1

#define ACPI_ADR_DP   0x03

ACPI _ADR Device Path SubType.

Referenced by DevPathFromTextAcpiAdr().

#define ACPI_DEVICE_PATH   0x02

#define ACPI_DISPLAY_ADR ( _DeviceIdScheme,
_HeadId,
_NonVgaOutput,
_BiosCanDetect,
_VendorInfo,
_Type,
_Port,
_Index   ) 

Value:

((UINT32)(  ((UINT32)((_DeviceIdScheme) & 0x1) << 31) |  \
                      (((_HeadId)                 & 0x7) << 18) |  \
                      (((_NonVgaOutput)           & 0x1) << 17) |  \
                      (((_BiosCanDetect)          & 0x1) << 16) |  \
                      (((_VendorInfo)             & 0xf) << 12) |  \
                      (((_Type)                   & 0xf) << 8)  |  \
                      (((_Port)                   & 0xf) << 4)  |  \
                       ((_Index)                  & 0xf) ))

#define ACPI_DP   0x01

ACPI Device Path SubType.

Referenced by ConvertFromTextAcpi(), and DevPathFromTextAcpi().

#define ACPI_EXTENDED_DP   0x02

Expanded ACPI Device Path SubType.

Referenced by DevPathFromTextAcpiEx(), and DevPathFromTextAcpiExp().

#define BBS_BBS_DP   0x01

BIOS Boot Specification Device Path SubType.

Referenced by DevPathFromTextBBS().

#define BBS_DEVICE_PATH   0x05

BIOS Boot Specification Device Path.

Referenced by DevPathFromTextBBS(), and DevPathFromTextBbsPath().

#define BBS_TYPE_BEV   0x80

#define BBS_TYPE_CDROM   0x03

#define BBS_TYPE_EMBEDDED_NETWORK   0x06

#define BBS_TYPE_FLOPPY   0x01

#define BBS_TYPE_HARDDRIVE   0x02

#define BBS_TYPE_PCMCIA   0x04

#define BBS_TYPE_UNKNOWN   0xFF

#define BBS_TYPE_USB   0x05

#define DEVICE_PATH_MESSAGING_PC_ANSI   EFI_PC_ANSI_GUID

#define DEVICE_PATH_MESSAGING_SAS   EFI_SAS_DEVICE_PATH_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 DEVICE_PATH_PROTOCOL   EFI_DEVICE_PATH_PROTOCOL_GUID

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

#define EFI_DEVICE_PATH_PROTOCOL_GUID

Value:

{ \
    0x9576e91, 0x6d3f, 0x11d2, {0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b } \
  }
Device Path protocol.

#define EFI_PERSISTENT_VIRTUAL_CD_GUID   EFI_ACPI_6_0_NFIT_GUID_RAM_DISK_SUPPORTING_VIRTUAL_CD_REGION_PERSISTENT

This GUID defines a RAM Disk supporting an ISO image in persistent memory.

#define EFI_PERSISTENT_VIRTUAL_DISK_GUID   EFI_ACPI_6_0_NFIT_GUID_RAM_DISK_SUPPORTING_VIRTUAL_DISK_REGION_PERSISTENT

This GUID defines a RAM Disk supporting a raw disk format in persistent memory.

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

Referenced by ConvertFromTextAcpi().

#define EFI_VIRTUAL_CD_GUID   EFI_ACPI_6_0_NFIT_GUID_RAM_DISK_SUPPORTING_VIRTUAL_CD_REGION_VOLATILE

This GUID defines a RAM Disk supporting an ISO image in volatile memory.

#define EFI_VIRTUAL_DISK_GUID   EFI_ACPI_6_0_NFIT_GUID_RAM_DISK_SUPPORTING_VIRTUAL_DISK_REGION_VOLATILE

This GUID defines a RAM Disk supporting a raw disk format in volatile memory.

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

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

Referenced by DevPathToTextAcpi().

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

#define END_DEVICE_PATH_TYPE   0x7f

Referenced by IsDevicePathEndType().

#define END_ENTIRE_DEVICE_PATH_SUBTYPE   0xFF

#define END_INSTANCE_DEVICE_PATH_SUBTYPE   0x01

#define HARDWARE_DEVICE_PATH   0x01

#define HW_BMC_DP   0x06

BMC Device Path SubType.

Referenced by DevPathFromTextBmc().

#define HW_CONTROLLER_DP   0x05

Controller Device Path SubType.

Referenced by DevPathFromTextCtrl().

#define HW_MEMMAP_DP   0x03

Memory Mapped Device Path SubType.

Referenced by DevPathFromTextMemoryMapped().

#define HW_PCCARD_DP   0x02

PCCARD Device Path SubType.

Referenced by DevPathFromTextPcCard().

#define HW_PCI_DP   0x01

PCI Device Path SubType.

Referenced by DevPathFromTextPci().

#define HW_VENDOR_DP   0x04

Hardware Vendor Device Path SubType.

Referenced by DevPathFromTextVenHw().

#define INFINIBAND_RESOURCE_FLAG_CONSOLE_PROTOCOL   0x04

#define INFINIBAND_RESOURCE_FLAG_EXTENDED_BOOT_ENVIRONMENT   0x02

#define INFINIBAND_RESOURCE_FLAG_IOC_SERVICE   0x01

#define INFINIBAND_RESOURCE_FLAG_NETWORK_PROTOCOL   0x10

#define INFINIBAND_RESOURCE_FLAG_STORAGE_PROTOCOL   0x08

#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 ISCSI_LOGIN_OPTION_DATA_DIGEST_USING_CRC32C   0x0008

#define ISCSI_LOGIN_OPTION_HEADER_DIGEST_USING_CRC32C   0x0002

#define ISCSI_LOGIN_OPTION_NO_DATA_DIGEST   0x0000

#define ISCSI_LOGIN_OPTION_NO_HEADER_DIGEST   0x0000

#define MBR_TYPE_EFI_PARTITION_TABLE_HEADER   0x02

#define MBR_TYPE_PCAT   0x01

#define MEDIA_CDROM_DP   0x02

CD-ROM Media Device Path SubType.

Referenced by DevPathFromTextCDROM().

#define MEDIA_DEVICE_PATH   0x04

#define MEDIA_FILEPATH_DP   0x04

File Path Media Device Path SubType

Referenced by DevPathFromTextFilePath(), FileDevicePath(), and GetFileBufferByFilePath().

#define MEDIA_HARDDRIVE_DP   0x01

Hard Drive Media Device Path SubType.

Referenced by DevPathFromTextHD().

#define MEDIA_PIWG_FW_FILE_DP   0x06

#define MEDIA_PIWG_FW_VOL_DP   0x07

PIWG Firmware Volume Device Path SubType.

Referenced by DevPathFromTextFv().

#define MEDIA_PROTOCOL_DP   0x05

Media Protocol Device Path SubType.

Referenced by DevPathFromTextMedia().

#define MEDIA_RAM_DISK_DP   0x09

#define MEDIA_RELATIVE_OFFSET_RANGE_DP   0x08

Media relative offset range device path.

Referenced by DevPathFromTextRelativeOffsetRange().

#define MEDIA_VENDOR_DP   0x03

Media vendor device path subtype.

Referenced by DevPathFromTextVenMedia().

#define MESSAGING_DEVICE_PATH   0x03

#define MSG_1394_DP   0x04

1394 Device Path SubType

Referenced by DevPathFromText1394().

#define MSG_ATAPI_DP   0x01

ATAPI Device Path SubType

Referenced by DevPathFromTextAta().

#define MSG_BLUETOOTH_DP   0x1b

Bluetooth Device Path SubType.

Referenced by DevPathFromTextBluetooth().

#define MSG_DEVICE_LOGICAL_UNIT_DP   0x11

Device Logical Unit SubType.

Referenced by DevPathFromTextUnit().

#define MSG_FIBRECHANNEL_DP   0x03

Fibre Channel SubType.

Referenced by DevPathFromTextFibre().

#define MSG_FIBRECHANNELEX_DP   0x15

Fibre Channel Ex SubType.

Referenced by DevPathFromTextFibreEx().

#define MSG_I2O_DP   0x06

I2O Device Path SubType.

Referenced by DevPathFromTextI2O().

#define MSG_INFINIBAND_DP   0x09

InfiniBand Device Path SubType.

Referenced by DevPathFromTextInfiniband().

#define MSG_IPv4_DP   0x0c

IPv4 Device Path SubType

Referenced by DevPathFromTextIPv4().

#define MSG_IPv6_DP   0x0d

IPv6 Device Path SubType.

Referenced by DevPathFromTextIPv6().

#define MSG_ISCSI_DP   0x13

iSCSI Device Path SubType

Referenced by DevPathFromTextiSCSI().

#define MSG_MAC_ADDR_DP   0x0b

MAC Address Device Path SubType.

Referenced by DevPathFromTextMAC().

#define MSG_NVME_NAMESPACE_DP   0x17

NvmExpress Namespace Device Path SubType.

Referenced by DevPathFromTextNVMe().

#define MSG_SASEX_DP   0x16

Serial Attached SCSI (SAS) Ex Device Path SubType

Referenced by DevPathFromTextSasEx().

#define MSG_SATA_DP   0x12

SATA Device Path SubType.

Referenced by DevPathFromTextSata().

#define MSG_SCSI_DP   0x02

SCSI Device Path SubType.

Referenced by DevPathFromTextScsi().

#define MSG_SD_DP   0x1A

SD (Secure Digital) Device Path SubType.

Referenced by DevPathFromTextSd().

#define MSG_UART_DP   0x0e

UART Device Path SubType.

Referenced by DevPathFromTextUart().

#define MSG_UFS_DP   0x19

Universal Flash Storage (UFS) Device Path SubType.

Referenced by DevPathFromTextUfs().

#define MSG_URI_DP   0x18

Uniform Resource Identifiers (URI) Device Path SubType

Referenced by DevPathFromTextUri().

#define MSG_USB_CLASS_DP   0x0f

USB Class Device Path SubType.

Referenced by ConvertFromTextUsbClass().

#define MSG_USB_DP   0x05

USB Device Path SubType.

Referenced by DevPathFromTextUsb().

#define MSG_USB_WWID_DP   0x10

USB WWID Device Path SubType.

Referenced by DevPathFromTextUsbWwid().

#define MSG_VENDOR_DP   0x0a

#define MSG_VLAN_DP   0x14

VLAN Device Path SubType.

Referenced by DevPathFromTextVlan().

#define MSG_WIFI_DP   0x1C

Wi-Fi Device Path SubType.

Referenced by DevPathFromTextWiFi().

#define NO_DISK_SIGNATURE   0x00

#define PNP_EISA_ID_CONST   0x41d0

Referenced by DevPathToTextAcpi().

#define PNP_EISA_ID_MASK   0xffff

Referenced by DevPathToTextAcpi().

#define SATA_HBA_DIRECT_CONNECT_FLAG   0x8000

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

#define SIGNATURE_TYPE_GUID   0x02

#define SIGNATURE_TYPE_MBR   0x01

#define SIZE_OF_FILEPATH_DEVICE_PATH   OFFSET_OF(FILEPATH_DEVICE_PATH,PathName)

Referenced by FileDevicePath().

#define UART_FLOW_CONTROL_HARDWARE   0x00000001

#define UART_FLOW_CONTROL_XON_XOFF   0x00000010


Typedef Documentation

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


Variable Documentation

Referenced by DevicePathFromHandle().


Generated on Thu Sep 24 23:14:19 2015 for MdePkg[ALL] by  doxygen 1.5.7.1