Device Path Protocol
Version 1.02 12/12/00 135
5.4.3 Rules with ACPI _ADR
If a device in the ACPI name space can be completely described by a _ADR object then it will map
to an EFI ACPI, Hardware, or Message Device Path structure. A _ADR method implies a bus with
a standard enumeration algorithm. If the ACPI device has a _ADR and a _CRS method, then it
should also have a _HID method and follow the rules for using _HID.
The following table relates the ACPI _ADR bus definition to the EFI Device Path:
Table 5-29. ACPI _ADR to EFI Device Path Mapping
ACPI _ADR Bus EFI Device Path
EISA Not supported
Floppy Bus ACPI Device Path: _HID PNP0303, _UID drive select encoding 0-3
IDE Controller ATAPI Message Device Path: Maser/Slave : LUN
IDE Channel ATAPI Message Device Path: Maser/Slave : LUN
PCI PCI Hardware Device Path
PCMCIA Not Supported
PC CARD PC CARD Hardware Device Path
SMBus Not Supported
5.4.4 Hardware vs. Messaging Device Path Rules
Hardware Device Paths are used to define paths on buses that have a standard enumeration
algorithm and that relate directly to the coherency domain of the system. The coherency domain is
defined as a global set of resources that is visible to at least one processor in the system. In a
typical system this would include the processor memory space, IO space, and PCI configuration
space.
Messaging Device Paths are used to define paths on buses that have a standard enumeration
algorithm, but are not part of the global coherency domain of the system. SCSI and Fibre Channel
are examples of this kind of bus. The Messaging Device Path can also be used to describe virtual
connections over network-style devices. An example would be the TCPI/IP address of a internet
connection.
Thus Hardware Device Path is used if the bus produces resources that show up in the coherency
resource domain of the system. A Message Device Path is used if the bus consumes resources from
the coherency domain and produces resources out side the coherency domain of the system.