Intel Extensible Firmware Interface Network Router User Manual


  Open as PDF
of 1084
 
Extensible Firmware Interface Specification
10-26 12/01/02 Version 1.10
10.4.4 UGA I/O Protocol
The EFI_UGA_IO_PROTOCOL supports an I/O request mode of operation that is targeted at
providing services to the OS high performance driver. The I/O requests are accessed via the
EFI_UGA_IO_PROTOCOL DispatchService()
member function. The I/O request services
include the capabilities supported by the EFI_UGA_DRAW_PROTOCOL
.
The I/O request mode services support a full set of services for the Graphics Controller, and all its
child devices. Currently Output Controllers, Output Ports, and vendor defined child devices are
supported. An example of an Output Controller would be a RAMDAC or TV OUT. An example
of an Output Port would include a Monitor, TV, or HDTV.
10.4.5 Fallback Mode Driver
A fallback mode driver is defined as a simple driver that can be carried with a hardware device that
can be made to run under any operating system given appropriate operating system support. The
term fallback mode stems from the ability to use this driver when a standard high performance
operating system driver is not available or some capability to manipulate the hardware is not
available in the high performance operating system driver.
A fallback mode driver for a video device can be constructed by layering operating system specific
code on top and below an EBC UGA option ROM. Since a UGA
driver uses EFI abstractions to
allocate memory and touch hardware it will be possible to replace the EFI 1.10 core services and
protocols that a UGA ROM
depends on with an operating specific driver. The operating system
will also need to abstract the EFI_UGA_IO_PROTOCOL
in some form that is compatible with the
operating system driver model. The DispatchService member of the
EFI_UGA_IO_PROTOCOL is designed to make binding this protocol into an Operation System
device driver model.
OM13158
OS EFI 1.1 EBC Driver
Virtual Machine
OS PCI Driver
EBC Simple
Graphic Output
Protocol
Driver
OS Friendly version of
UGA I/O Protocol
Same code used by
firmware
Figure 10-2. Fallback Mode Driver
From the UGA ROMs point of view it cannot tell the difference between a virtual machine that is
produced in the pre-OS and OS present space.