Newer
Older
AMI-Aptio-BIOS-Reversed / MdeModulePkg / Universal / Console / ConSplitterDxe / README.md
@Ajax Dong Ajax Dong 2 days ago 2 KB Full restructure

ConSplitter

Field Value
Index 0124
Module ConSplitter
Size 26884 bytes (26.9 KB)
PE File ConSplitter.efi
Phase DXE
Source AmiModulePkg/Console/ConSplitter/ConSplit.c
SHA-256 5bb88921eaa4...
Sections 6 (.text, .rdata, .data, section_3, .xdata, .reloc)

Overview

ConSplitter is an AMI Console Splitter driver that implements a console multiplexer for UEFI. It registers three driver binding protocols to aggregate multiple physical console devices into single logical console handles for ConOut, ConIn, and StdErr. The driver manages child device lists for text output, text input, simple pointer, and absolute pointer devices, allowing the UEFI console subsystem to transparently support multiple simultaneous console devices.

Key Functions

  • ConSplitterTextOutDriverBindingSupported() -- Tests if a controller supports text output
  • ConSplitterTextOutDriverBindingStart() -- Starts text output on a controller
  • ConSplitterTextOutDriverBindingStop() -- Stops text output on a controller
  • ConSplitterTextInDriverBindingSupported() -- Tests if a controller supports text input
  • ConSplitterTextInDriverBindingStart() -- Starts text input on a controller
  • ConSplitterTextInDriverBindingStop() -- Stops text input on a controller
  • ConSplitterPointerDriverBindingSupported() -- Tests if a controller supports pointer input
  • ConSplitterPointerDriverBindingStart() -- Starts pointer input on a controller
  • ConSplitterPointerDriverBindingStop() -- Stops pointer input on a controller

Dependencies

  • EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL
  • EFI_SIMPLE_TEXT_INPUT_PROTOCOL
  • EFI_GRAPHICS_OUTPUT_PROTOCOL
  • EFI_SIMPLE_POINTER_PROTOCOL
  • EFI_ABSOLUTE_POINTER_PROTOCOL
  • EFI_DEVICE_PATH_PROTOCOL
  • EFI_SERIAL_IO_PROTOCOL
  • EFI_HII_DATABASE_PROTOCOL
  • EFI_UGA_DRAW_PROTOCOL
  • gEfiConsoleOutDeviceGuid / gEfiGlobalVariableGuid (ConOutDev/ConInDev UEFI variables)

Platform

  • Architecture: x86-64 (PE32+)
  • Subsystem: EFI_BOOT_SERVICE_DRIVER (0x0B)
  • Source: AmiModulePkg / MdeModulePkg
  • BIOS: HR650X (HR6N0XMLK)