![Intel Extensible Firmware Interface Specification Download Page 155](http://html1.mh-extra.com/html/intel/extensible-firmware-interface/extensible-firmware-interface_specification_2073117155.webp)
Version 1.02
12/12/00
137
6
Device I/O Protocol
This chapter defines the Device I/O protocol. This protocol is used by code, typically drivers,
running in the EFI boot services environment to access memory and I/O. In particular, functions
for managing PCI buses are defined here although other bus types may be supported in a similar
fashion as extensions to this specification.
6.1
Device I/O Overview
The interfaces provided in the
DEVICE_IO
protocol are for performing basic operations to
memory, I/O, and PCI configuration space. The
DEVICE_IO
protocol can be thought of as the
bus driver for the system. The system provides abstracted access to basic system resources to allow
a driver to have a programmatic method to access these basic system resources.
The
DEVICE_IO
protocol allows for future innovation of the platform. It abstracts device
specific code from the system memory map. This allows system designers to greatly change the
system memory map without impacting platform independent code that is consuming basic system
resources.
It is important to note that this specification ties these interfaces into a single protocol solely for the
purpose of simplicity. Other similar bus- or device-specific protocols that “programmatic child
drivers” may require can easily be added by using a new protocol GUID. For example, a
comprehensive USB-specific host controller protocol interface could be defined for child drivers.
These drivers would perform a
LocateDevicePath()
to obtain the proper USB interface set,
from somewhere up the device path, just as a PCI-based device driver would do with the
DEVICE_IO
protocol to gain access to the PCI configuration space interfaces.
Summary of Contents for Extensible Firmware Interface
Page 1: ...Extensible Firmware Interface Specification Version 1 02 December 12 2000...
Page 4: ...Extensible Firmware Interface Specification iv 12 12 00 Version 1 02...
Page 42: ...Extensible Firmware Interface Specification 24 12 01 00 Version 1 02...
Page 190: ...Extensible Firmware Interface Specification 172 12 12 00 Version 1 02...
Page 200: ...Extensible Firmware Interface Specification 182 12 12 00 Version 1 02...
Page 226: ...Extensible Firmware Interface Specification 208 12 12 00 Version 1 02...
Page 230: ...Extensible Firmware Interface Specification 212 12 12 00 Version 1 02...
Page 252: ...Extensible Firmware Interface Specification 234 12 12 00 Version 1 02...
Page 294: ...Extensible Firmware Interface Specification 276 12 12 00 Version 1 02...
Page 348: ...Extensible Firmware Interface Specification 330 12 01 00 Version 1 01...
Page 350: ...Extensible Firmware Interface Specification 332 12 12 00 Version 1 02...
Page 354: ...Extensible Firmware Interface Specification 336 12 12 00 Version 1 02...
Page 362: ...Extensible Firmware Interface Specification 344 12 12 00 Version 1 02...
Page 486: ...Extensible Firmware Interface Specification 468 12 12 00 Version 1 02...
Page 494: ...Extensible Firmware Interface Specification 476 12 12 00 Version 1 02...