Extensible Firmware Interface Specification
A Device Path is a series of generic Device Path nodes. The first Device Path node starts at byte
offset zero of the Device Path. The next Device Path node starts at the end of the previous Device
Path node. Therefore all nodes are byte packed data structures that may appear on any byte
boundary. All code references to device path notes must assume all fields are UNALIGNED. Since
every Device Path node contains a length field in a known place, it is possible to traverse Device
Path nodes that are of an unknown type. There is no limit to the number, type, or sequence of
nodes in a Device Path.
A Device Path is terminated by an End of Hardware Device Path node. This type of node has two
sub-types (see Table 5-2):
•
End This Instance of a Device Path (sub-type 0x01). This type of node terminates one Device
Path instance and denotes the start of another. This is only required when an
represents multiple devices. An example of this would be a handle that represents
ConsoleOut, and consists of both a VGA console and serial output console. This handle
would send the
Device Path that contains two complete Device Paths.
•
End Entire Device Path (sub-type 0xFF). This type of node terminates an entire Device Path.
Software searches for this sub-type to find the end of a Device Path. All Device Paths must
end with this sub-type.
Table 5-2.
Device Path End Structure
Byte
Mnemonic
Offset
Type
0
Sub-Type
1
Length
2
5.3.2
Hardware Device Path
This Device Path defines how a device is attached to the resource domain of a system, where
resource domain is simply the shared memory, memory mapped I/O, and I/O space of the system.
It is possible to have multiple levels of Hardware Device Path such as a PCCARD device that was
attached to a PCCARD PCI controller.
120
stream to both VGA and serial concurrently and thus has a
ConsoleOut
Byte
Length
Description
1
Type 0x7F – End of Hardware Device Path
Type 0xFF – End of Hardware Device Path
1
Sub-Type 0xFF – End Entire Device Path, or
Sub-Type 0x01 – End This Instance of a Device Path and start a new
2
Length of this structure in bytes. Length is 4 bytes.
12/12/00
Device Path
EFI_HANDLE
Version 1.02
Need help?
Do you have a question about the Extensible Firmware Interface and is the answer not in the manual?