DevicePath.h File Reference

The device path protocol as defined in UEFI 2.0. More...

#include <gpxe/efi/Guid/PcAnsi.h>

Go to the source code of this file.

Data Structures

struct  EFI_DEVICE_PATH_PROTOCOL
 This protocol can be used on any device handle to obtain generic path/location information concerning the physical device or logical device. More...
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  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  ISCSI_DEVICE_PATH
struct  HARDDRIVE_DEVICE_PATH
struct  CDROM_DEVICE_PATH
struct  FILEPATH_DEVICE_PATH
struct  MEDIA_PROTOCOL_DEVICE_PATH
struct  MEDIA_FW_VOL_DEVICE_PATH
struct  MEDIA_FW_VOL_FILEPATH_DEVICE_PATH
struct  BBS_BBS_DEVICE_PATH
union  EFI_DEV_PATH
 Union of all possible Device Paths and pointers to Device Paths. More...
union  EFI_DEV_PATH_PTR

Defines

#define EFI_DEVICE_PATH_PROTOCOL_GUID
 Device Path protocol.
#define DEVICE_PATH_PROTOCOL   EFI_DEVICE_PATH_PROTOCOL_GUID
 Device Path information.
#define HARDWARE_DEVICE_PATH   0x01
 Hardware Device Paths.
#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
 ACPI Device Paths.
#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
 Messaging Device Paths.
#define MSG_ATAPI_DP   0x01
#define MSG_SCSI_DP   0x02
#define MSG_FIBRECHANNEL_DP   0x03
#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 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 DEVICE_PATH_MESSAGING_UART_FLOW_CONTROL   EFI_UART_DEVICE_PATH_GUID
#define DEVICE_PATH_MESSAGING_SAS   EFI_SAS_DEVICE_PATH_GUID
#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 MEDIA_DEVICE_PATH   0x04
#define MEDIA_HARDDRIVE_DP   0x01
#define MBR_TYPE_PCAT   0x01
#define MBR_TYPE_EFI_PARTITION_TABLE_HEADER   0x02
#define SIGNATURE_TYPE_MBR   0x01
#define SIGNATURE_TYPE_GUID   0x02
#define MEDIA_CDROM_DP   0x02
#define MEDIA_VENDOR_DP   0x03
#define MEDIA_FILEPATH_DP   0x04
#define SIZE_OF_FILEPATH_DEVICE_PATH   EFI_FIELD_OFFSET(FILEPATH_DEVICE_PATH,PathName)
#define MEDIA_PROTOCOL_DP   0x05
#define MEDIA_PIWG_FW_VOL_DP   0x7
#define MEDIA_PIWG_FW_FILE_DP   0x6
#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
 For backward-compatible with EFI1.1.
typedef VENDOR_DEVICE_PATH VENDOR_DEFINED_DEVICE_PATH

Variables

EFI_GUID gEfiDevicePathProtocolGuid


Detailed Description

The device path protocol as defined in UEFI 2.0.

The device path represents a programatic path to a device. It's the view from a software point of view. It also 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 - 2008, 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 which 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.


Define Documentation

#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.

#define DEVICE_PATH_PROTOCOL   EFI_DEVICE_PATH_PROTOCOL_GUID

Device Path information.

Definition at line 39 of file DevicePath.h.

#define HARDWARE_DEVICE_PATH   0x01

Hardware Device Paths.

Definition at line 77 of file DevicePath.h.

#define HW_PCI_DP   0x01

Definition at line 79 of file DevicePath.h.

#define HW_PCCARD_DP   0x02

Definition at line 86 of file DevicePath.h.

#define HW_MEMMAP_DP   0x03

Definition at line 92 of file DevicePath.h.

#define HW_VENDOR_DP   0x04

Definition at line 100 of file DevicePath.h.

#define HW_CONTROLLER_DP   0x05

Definition at line 106 of file DevicePath.h.

#define ACPI_DEVICE_PATH   0x02

ACPI Device Paths.

Definition at line 115 of file DevicePath.h.

#define ACPI_DP   0x01

Definition at line 117 of file DevicePath.h.

#define ACPI_EXTENDED_DP   0x02

Definition at line 124 of file DevicePath.h.

#define PNP_EISA_ID_CONST   0x41d0

Definition at line 144 of file DevicePath.h.

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

Definition at line 145 of file DevicePath.h.

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

Definition at line 146 of file DevicePath.h.

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

Definition at line 147 of file DevicePath.h.

#define PNP_EISA_ID_MASK   0xffff

Definition at line 149 of file DevicePath.h.

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

Definition at line 150 of file DevicePath.h.

#define ACPI_ADR_DP   0x03

Definition at line 153 of file DevicePath.h.

#define ACPI_ADR_DISPLAY_TYPE_OTHER   0

Definition at line 159 of file DevicePath.h.

#define ACPI_ADR_DISPLAY_TYPE_VGA   1

Definition at line 160 of file DevicePath.h.

#define ACPI_ADR_DISPLAY_TYPE_TV   2

Definition at line 161 of file DevicePath.h.

#define ACPI_ADR_DISPLAY_TYPE_EXTERNAL_DIGITAL   3

Definition at line 162 of file DevicePath.h.

#define ACPI_ADR_DISPLAY_TYPE_INTERNAL_DIGITAL   4

Definition at line 163 of file DevicePath.h.

#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) ))

Definition at line 165 of file DevicePath.h.

#define MESSAGING_DEVICE_PATH   0x03

Messaging Device Paths.

Definition at line 178 of file DevicePath.h.

Referenced by efi_snp_driver_start().

#define MSG_ATAPI_DP   0x01

Definition at line 180 of file DevicePath.h.

#define MSG_SCSI_DP   0x02

Definition at line 188 of file DevicePath.h.

#define MSG_FIBRECHANNEL_DP   0x03

Definition at line 195 of file DevicePath.h.

#define MSG_1394_DP   0x04

Definition at line 203 of file DevicePath.h.

#define MSG_USB_DP   0x05

Definition at line 210 of file DevicePath.h.

#define MSG_USB_CLASS_DP   0x0f

Definition at line 217 of file DevicePath.h.

#define MSG_USB_WWID_DP   0x10

Definition at line 227 of file DevicePath.h.

#define MSG_DEVICE_LOGICAL_UNIT_DP   0x11

Definition at line 237 of file DevicePath.h.

#define MSG_SATA_DP   0x12

Definition at line 243 of file DevicePath.h.

#define MSG_I2O_DP   0x06

Definition at line 251 of file DevicePath.h.

#define MSG_MAC_ADDR_DP   0x0b

Definition at line 257 of file DevicePath.h.

Referenced by efi_snp_driver_start().

#define MSG_IPv4_DP   0x0c

Definition at line 264 of file DevicePath.h.

#define MSG_IPv6_DP   0x0d

Definition at line 275 of file DevicePath.h.

#define MSG_INFINIBAND_DP   0x09

Definition at line 286 of file DevicePath.h.

#define INFINIBAND_RESOURCE_FLAG_IOC_SERVICE   0x01

Definition at line 296 of file DevicePath.h.

#define INFINIBAND_RESOURCE_FLAG_EXTENDED_BOOT_ENVIRONMENT   0x02

Definition at line 297 of file DevicePath.h.

#define INFINIBAND_RESOURCE_FLAG_CONSOLE_PROTOCOL   0x04

Definition at line 298 of file DevicePath.h.

#define INFINIBAND_RESOURCE_FLAG_STORAGE_PROTOCOL   0x08

Definition at line 299 of file DevicePath.h.

#define INFINIBAND_RESOURCE_FLAG_NETWORK_PROTOCOL   0x10

Definition at line 300 of file DevicePath.h.

#define MSG_UART_DP   0x0e

Definition at line 302 of file DevicePath.h.

#define MSG_VENDOR_DP   0x0a

Definition at line 315 of file DevicePath.h.

#define DEVICE_PATH_MESSAGING_PC_ANSI   EFI_PC_ANSI_GUID

Definition at line 318 of file DevicePath.h.

#define DEVICE_PATH_MESSAGING_VT_100   EFI_VT_100_GUID

Definition at line 319 of file DevicePath.h.

#define DEVICE_PATH_MESSAGING_VT_100_PLUS   EFI_VT_100_PLUS_GUID

Definition at line 320 of file DevicePath.h.

#define DEVICE_PATH_MESSAGING_VT_UTF8   EFI_VT_UTF8_GUID

Definition at line 321 of file DevicePath.h.

#define DEVICE_PATH_MESSAGING_UART_FLOW_CONTROL   EFI_UART_DEVICE_PATH_GUID

Definition at line 323 of file DevicePath.h.

#define DEVICE_PATH_MESSAGING_SAS   EFI_SAS_DEVICE_PATH_GUID

Definition at line 331 of file DevicePath.h.

#define MSG_ISCSI_DP   0x13

Definition at line 343 of file DevicePath.h.

#define ISCSI_LOGIN_OPTION_NO_HEADER_DIGEST   0x0000

Definition at line 353 of file DevicePath.h.

#define ISCSI_LOGIN_OPTION_HEADER_DIGEST_USING_CRC32C   0x0002

Definition at line 354 of file DevicePath.h.

#define ISCSI_LOGIN_OPTION_NO_DATA_DIGEST   0x0000

Definition at line 355 of file DevicePath.h.

#define ISCSI_LOGIN_OPTION_DATA_DIGEST_USING_CRC32C   0x0008

Definition at line 356 of file DevicePath.h.

#define ISCSI_LOGIN_OPTION_AUTHMETHOD_CHAP   0x0000

Definition at line 357 of file DevicePath.h.

#define ISCSI_LOGIN_OPTION_AUTHMETHOD_NON   0x1000

Definition at line 358 of file DevicePath.h.

#define ISCSI_LOGIN_OPTION_CHAP_BI   0x0000

Definition at line 359 of file DevicePath.h.

#define ISCSI_LOGIN_OPTION_CHAP_UNI   0x2000

Definition at line 360 of file DevicePath.h.

#define MEDIA_DEVICE_PATH   0x04

Definition at line 365 of file DevicePath.h.

#define MEDIA_HARDDRIVE_DP   0x01

Definition at line 367 of file DevicePath.h.

#define MBR_TYPE_PCAT   0x01

Definition at line 378 of file DevicePath.h.

#define MBR_TYPE_EFI_PARTITION_TABLE_HEADER   0x02

Definition at line 379 of file DevicePath.h.

#define SIGNATURE_TYPE_MBR   0x01

Definition at line 381 of file DevicePath.h.

#define SIGNATURE_TYPE_GUID   0x02

Definition at line 382 of file DevicePath.h.

#define MEDIA_CDROM_DP   0x02

Definition at line 384 of file DevicePath.h.

#define MEDIA_VENDOR_DP   0x03

Definition at line 395 of file DevicePath.h.

#define MEDIA_FILEPATH_DP   0x04

Definition at line 397 of file DevicePath.h.

#define SIZE_OF_FILEPATH_DEVICE_PATH   EFI_FIELD_OFFSET(FILEPATH_DEVICE_PATH,PathName)

Definition at line 403 of file DevicePath.h.

#define MEDIA_PROTOCOL_DP   0x05

Definition at line 405 of file DevicePath.h.

#define MEDIA_PIWG_FW_VOL_DP   0x7

Definition at line 412 of file DevicePath.h.

#define MEDIA_PIWG_FW_FILE_DP   0x6

Definition at line 419 of file DevicePath.h.

#define BBS_DEVICE_PATH   0x05

Definition at line 428 of file DevicePath.h.

#define BBS_BBS_DP   0x01

Definition at line 429 of file DevicePath.h.

#define BBS_TYPE_FLOPPY   0x01

Definition at line 440 of file DevicePath.h.

#define BBS_TYPE_HARDDRIVE   0x02

Definition at line 441 of file DevicePath.h.

#define BBS_TYPE_CDROM   0x03

Definition at line 442 of file DevicePath.h.

#define BBS_TYPE_PCMCIA   0x04

Definition at line 443 of file DevicePath.h.

#define BBS_TYPE_USB   0x05

Definition at line 444 of file DevicePath.h.

#define BBS_TYPE_EMBEDDED_NETWORK   0x06

Definition at line 445 of file DevicePath.h.

#define BBS_TYPE_BEV   0x80

Definition at line 446 of file DevicePath.h.

#define BBS_TYPE_UNKNOWN   0xFF

Definition at line 447 of file DevicePath.h.

#define END_DEVICE_PATH_TYPE   0x7f

Definition at line 529 of file DevicePath.h.

Referenced by efi_snp_driver_start().

#define END_ENTIRE_DEVICE_PATH_SUBTYPE   0xFF

Definition at line 530 of file DevicePath.h.

Referenced by efi_snp_driver_start().

#define END_INSTANCE_DEVICE_PATH_SUBTYPE   0x01

Definition at line 531 of file DevicePath.h.


Typedef Documentation

For backward-compatible with EFI1.1.

Definition at line 72 of file DevicePath.h.

Definition at line 316 of file DevicePath.h.


Variable Documentation


Generated on Tue Apr 6 20:01:49 2010 for gPXE by  doxygen 1.5.7.1