3.15.4 Console drivers

UEFI consoles drivers may include one or more of the following:
  • Text console devices
  • Graphical console devices
  • Keyboards
  • Mice
  • Serial ports
Some systems may provide custom console devices. The following table shows examples of console related UEFI Drivers from the EDK II. These UEFI Drivers may be carried by the platform firmware or in standard containers for UEFI Drivers such as PCI Option ROMs.

Table 13-UEFI console drivers

Class of driver
Type of driver
Driver name
Description and example
USB Console
USB host controller driver
UhciDxe br/> EhciDxe br/> XhciDxe
Consumes the PCI I/O Protocol and produces the USB 2 Host Controller Protocol. 25: Image(EhciDxe) DriverBinding ComponentName2 ComponentName
USB Console
USB bus driver
UsbBusDxe
Consumes the USB Host Controller 2 Protocol and produces the USB I/O Protocol. 26: Image(UsbBusDxe) DriverBinding ComponentName2 ComponentName
USB Console
USB keyboard driver
UsbKbDxe
Consumes the USB I/O Protocol and produces the Simple Input Ex Protocol and Simple Input Protocol. 27: Image(UsbKbDxe) DriverBinding ComponentName2 ComponentName
USB Console
USB mouse
UsbMouseDxe
Consumes the USB I/O Protocol and produces the Simple Pointer Protocol. 28: Image(UsbMouseDxe) DriverBinding ComponentName2 ComponentName
Graphics
Graphics Output
CirrusLogic5430 Dxe
Consumes the PCI I/O Protocol and produces the Graphics Output Protocol. 2E: Image(CirrusLogic5430Dxe) DriverBinding ComponentName2 ComponentName
Graphics
Graphics console driver
GraphicsConsole Dxe
Consumes the Graphics Output Protocol and produces the Simple Text Output Protocol. 2D: Image(GraphicsConsoleDxe) ComponentName
Serial
PCI Serial
PciSerialDxe
Consumes the PCI I/O Protocol and produces the Serial I/O Protocol. 30: Image(PciSerialDxe) DriverBinding ComponentName2 ComponentName
Serial
Serial terminal driver
TerminalDxe
Consumes the Serial I/O Protocol and produces the Simple Text Input, Simple text Input Ex, and Simple Text Output Protocols. 31: Image(TerminalDxe) DriverBinding ComponentName2 ComponentName
Generic Console
Platform console management
ConPlatformDxe
This driver is unique in that a single set of driver code produces two driver handles――one for the "Console Out" and another for the "Console In". This driver evaluates the set of physical console devices and the UEFI Console Variables that describe the platform settings for active consoles and marks the active consoles to they can be easily discovered by driver ConSplitterDxe. Different platforms may modify the default policy decisions this driver provides. 32: Image(ConPlatformDxe) Driver Binding ComponentName2 ComponentName 33: DriverBinding ComponentName2 ComponentName
Generic Console
Console splitter driver
ConSplitterDxe
This driver may not be present on all platforms. It is only required on platforms that support multiple output console devices or multiple input console devices. It combines the various selected input and output devices for the following four basic UEFI user devices: ConIn ConOut ErrOut PointerIn It also installs multiple driver handles for a single set of driver code. It installs driver handles to manage ConIn, ConOut, ErrOut, and PointerIn devices. The entry point of this driver creates virtual handles for ConIn, ConOut, and StdErr, respectively, that are called the following: PrimaryConIn PrimaryConOut PrimaryStdErr The virtual handles always exist even if no console exists or no consoles are yet connected in the system. 34: Image(ConSplitterDxe) DriverBinding ComponentName2 ComponentName 35: DriverBinding ComponentName2 ComponentName 36: DriverBinding ComponentName2 ComponentName 37: DriverBinding ComponentName2 ComponentName 38: TxtinEx Txtin SimplePointer AbsolutePointer 39: Txtout GraphicsOutput UgaDraw