TianoCore EDK2 master
Loading...
Searching...
No Matches
ConSplitter.h File Reference

Go to the source code of this file.

Data Structures

struct  CONSOLE_OUT_MODE
 
struct  TEXT_OUT_SPLITTER_QUERY_DATA
 
struct  _TEXT_IN_EX_SPLITTER_NOTIFY
 
struct  TEXT_IN_SPLITTER_PRIVATE_DATA
 
struct  TEXT_OUT_AND_GOP_DATA
 
struct  TEXT_OUT_SPLITTER_PRIVATE_DATA
 

Macros

#define UNICODE_NARROW_CHAR   0xFFF0
 
#define UNICODE_WIDE_CHAR   0xFFF1
 
#define CONSOLE_SPLITTER_ALLOC_UNIT   32
 
#define KEY_STATE_VALID_EXPOSED   (EFI_TOGGLE_STATE_VALID | EFI_KEY_STATE_EXPOSED)
 
#define TEXT_IN_EX_SPLITTER_NOTIFY_SIGNATURE   SIGNATURE_32 ('T', 'i', 'S', 'n')
 
#define TEXT_IN_EX_SPLITTER_NOTIFY_FROM_THIS(a)
 
#define TEXT_IN_SPLITTER_PRIVATE_DATA_SIGNATURE   SIGNATURE_32 ('T', 'i', 'S', 'p')
 
#define TEXT_IN_SPLITTER_PRIVATE_DATA_FROM_THIS(a)
 
#define TEXT_IN_SPLITTER_PRIVATE_DATA_FROM_SIMPLE_POINTER_THIS(a)
 
#define TEXT_IN_EX_SPLITTER_PRIVATE_DATA_FROM_THIS(a)
 
#define TEXT_IN_SPLITTER_PRIVATE_DATA_FROM_ABSOLUTE_POINTER_THIS(a)
 
#define TEXT_OUT_SPLITTER_PRIVATE_DATA_SIGNATURE   SIGNATURE_32 ('T', 'o', 'S', 'p')
 
#define TEXT_OUT_SPLITTER_PRIVATE_DATA_FROM_THIS(a)
 
#define GRAPHICS_OUTPUT_SPLITTER_PRIVATE_DATA_FROM_THIS(a)
 
#define UGA_DRAW_SPLITTER_PRIVATE_DATA_FROM_THIS(a)
 
#define CONSOLE_CONTROL_SPLITTER_PRIVATE_DATA_FROM_THIS(a)
 

Typedefs

typedef struct _TEXT_IN_EX_SPLITTER_NOTIFY TEXT_IN_EX_SPLITTER_NOTIFY
 

Functions

EFI_STATUS EFIAPI ConSplitterDriverEntry (IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable)
 
EFI_STATUS ConSplitterTextInConstructor (TEXT_IN_SPLITTER_PRIVATE_DATA *ConInPrivate)
 
EFI_STATUS ConSplitterTextOutConstructor (TEXT_OUT_SPLITTER_PRIVATE_DATA *ConOutPrivate)
 
EFI_STATUS EFIAPI ConSplitterConInDriverBindingSupported (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath)
 
EFI_STATUS EFIAPI ConSplitterSimplePointerDriverBindingSupported (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath)
 
EFI_STATUS EFIAPI ConSplitterConOutDriverBindingSupported (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath)
 
EFI_STATUS EFIAPI ConSplitterStdErrDriverBindingSupported (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath)
 
EFI_STATUS EFIAPI ConSplitterConInDriverBindingStart (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath)
 
EFI_STATUS EFIAPI ConSplitterSimplePointerDriverBindingStart (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath)
 
EFI_STATUS EFIAPI ConSplitterConOutDriverBindingStart (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath)
 
EFI_STATUS EFIAPI ConSplitterStdErrDriverBindingStart (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath)
 
EFI_STATUS EFIAPI ConSplitterConInDriverBindingStop (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN UINTN NumberOfChildren, IN EFI_HANDLE *ChildHandleBuffer)
 
EFI_STATUS EFIAPI ConSplitterSimplePointerDriverBindingStop (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN UINTN NumberOfChildren, IN EFI_HANDLE *ChildHandleBuffer)
 
EFI_STATUS EFIAPI ConSplitterConOutDriverBindingStop (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN UINTN NumberOfChildren, IN EFI_HANDLE *ChildHandleBuffer)
 
EFI_STATUS EFIAPI ConSplitterStdErrDriverBindingStop (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN UINTN NumberOfChildren, IN EFI_HANDLE *ChildHandleBuffer)
 
EFI_STATUS EFIAPI ConSplitterAbsolutePointerDriverBindingSupported (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath)
 
EFI_STATUS EFIAPI ConSplitterAbsolutePointerDriverBindingStart (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath)
 
EFI_STATUS EFIAPI ConSplitterAbsolutePointerDriverBindingStop (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN UINTN NumberOfChildren, IN EFI_HANDLE *ChildHandleBuffer)
 
EFI_STATUS ConSplitterAbsolutePointerAddDevice (IN TEXT_IN_SPLITTER_PRIVATE_DATA *Private, IN EFI_ABSOLUTE_POINTER_PROTOCOL *AbsolutePointer)
 
EFI_STATUS ConSplitterAbsolutePointerDeleteDevice (IN TEXT_IN_SPLITTER_PRIVATE_DATA *Private, IN EFI_ABSOLUTE_POINTER_PROTOCOL *AbsolutePointer)
 
EFI_STATUS EFIAPI ConSplitterAbsolutePointerReset (IN EFI_ABSOLUTE_POINTER_PROTOCOL *This, IN BOOLEAN ExtendedVerification)
 
EFI_STATUS EFIAPI ConSplitterAbsolutePointerGetState (IN EFI_ABSOLUTE_POINTER_PROTOCOL *This, IN OUT EFI_ABSOLUTE_POINTER_STATE *State)
 
VOID EFIAPI ConSplitterAbsolutePointerWaitForInput (IN EFI_EVENT Event, IN VOID *Context)
 
EFI_STATUS EFIAPI ConSplitterComponentNameGetDriverName (IN EFI_COMPONENT_NAME_PROTOCOL *This, IN CHAR8 *Language, OUT CHAR16 **DriverName)
 
EFI_STATUS EFIAPI ConSplitterConInComponentNameGetControllerName (IN EFI_COMPONENT_NAME_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN EFI_HANDLE ChildHandle OPTIONAL, IN CHAR8 *Language, OUT CHAR16 **ControllerName)
 
EFI_STATUS EFIAPI ConSplitterSimplePointerComponentNameGetControllerName (IN EFI_COMPONENT_NAME_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN EFI_HANDLE ChildHandle OPTIONAL, IN CHAR8 *Language, OUT CHAR16 **ControllerName)
 
EFI_STATUS EFIAPI ConSplitterAbsolutePointerComponentNameGetControllerName (IN EFI_COMPONENT_NAME_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN EFI_HANDLE ChildHandle OPTIONAL, IN CHAR8 *Language, OUT CHAR16 **ControllerName)
 
EFI_STATUS EFIAPI ConSplitterConOutComponentNameGetControllerName (IN EFI_COMPONENT_NAME_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN EFI_HANDLE ChildHandle OPTIONAL, IN CHAR8 *Language, OUT CHAR16 **ControllerName)
 
EFI_STATUS EFIAPI ConSplitterStdErrComponentNameGetControllerName (IN EFI_COMPONENT_NAME_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN EFI_HANDLE ChildHandle OPTIONAL, IN CHAR8 *Language, OUT CHAR16 **ControllerName)
 
EFI_STATUS ConSplitterTextInAddDevice (IN TEXT_IN_SPLITTER_PRIVATE_DATA *Private, IN EFI_SIMPLE_TEXT_INPUT_PROTOCOL *TextIn)
 
EFI_STATUS ConSplitterTextInDeleteDevice (IN TEXT_IN_SPLITTER_PRIVATE_DATA *Private, IN EFI_SIMPLE_TEXT_INPUT_PROTOCOL *TextIn)
 
EFI_STATUS ConSplitterSimplePointerAddDevice (IN TEXT_IN_SPLITTER_PRIVATE_DATA *Private, IN EFI_SIMPLE_POINTER_PROTOCOL *SimplePointer)
 
EFI_STATUS ConSplitterSimplePointerDeleteDevice (IN TEXT_IN_SPLITTER_PRIVATE_DATA *Private, IN EFI_SIMPLE_POINTER_PROTOCOL *SimplePointer)
 
EFI_STATUS ConSplitterTextOutAddDevice (IN TEXT_OUT_SPLITTER_PRIVATE_DATA *Private, IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *TextOut, IN EFI_GRAPHICS_OUTPUT_PROTOCOL *GraphicsOutput, IN EFI_UGA_DRAW_PROTOCOL *UgaDraw)
 
EFI_STATUS ConSplitterTextOutDeleteDevice (IN TEXT_OUT_SPLITTER_PRIVATE_DATA *Private, IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *TextOut)
 
EFI_STATUS EFIAPI ConSplitterTextInReset (IN EFI_SIMPLE_TEXT_INPUT_PROTOCOL *This, IN BOOLEAN ExtendedVerification)
 
EFI_STATUS EFIAPI ConSplitterTextInReadKeyStroke (IN EFI_SIMPLE_TEXT_INPUT_PROTOCOL *This, OUT EFI_INPUT_KEY *Key)
 
EFI_STATUS ConSplitterTextInExAddDevice (IN TEXT_IN_SPLITTER_PRIVATE_DATA *Private, IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *TextInEx)
 
EFI_STATUS ConSplitterTextInExDeleteDevice (IN TEXT_IN_SPLITTER_PRIVATE_DATA *Private, IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *TextInEx)
 
EFI_STATUS EFIAPI ConSplitterTextInResetEx (IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *This, IN BOOLEAN ExtendedVerification)
 
EFI_STATUS EFIAPI ConSplitterTextInReadKeyStrokeEx (IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *This, OUT EFI_KEY_DATA *KeyData)
 
EFI_STATUS EFIAPI ConSplitterTextInSetState (IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *This, IN EFI_KEY_TOGGLE_STATE *KeyToggleState)
 
EFI_STATUS EFIAPI ConSplitterTextInRegisterKeyNotify (IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *This, IN EFI_KEY_DATA *KeyData, IN EFI_KEY_NOTIFY_FUNCTION KeyNotificationFunction, OUT VOID **NotifyHandle)
 
EFI_STATUS EFIAPI ConSplitterTextInUnregisterKeyNotify (IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *This, IN VOID *NotificationHandle)
 
VOID EFIAPI ConSplitterTextInWaitForKey (IN EFI_EVENT Event, IN VOID *Context)
 
EFI_STATUS EFIAPI ConSplitterTextInPrivateReadKeyStroke (IN TEXT_IN_SPLITTER_PRIVATE_DATA *Private, OUT EFI_INPUT_KEY *Key)
 
EFI_STATUS EFIAPI ConSplitterSimplePointerReset (IN EFI_SIMPLE_POINTER_PROTOCOL *This, IN BOOLEAN ExtendedVerification)
 
EFI_STATUS EFIAPI ConSplitterSimplePointerGetState (IN EFI_SIMPLE_POINTER_PROTOCOL *This, IN OUT EFI_SIMPLE_POINTER_STATE *State)
 
VOID EFIAPI ConSplitterSimplePointerWaitForInput (IN EFI_EVENT Event, IN VOID *Context)
 
EFI_STATUS EFIAPI ConSplitterTextOutReset (IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This, IN BOOLEAN ExtendedVerification)
 
EFI_STATUS EFIAPI ConSplitterTextOutOutputString (IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This, IN CHAR16 *WString)
 
EFI_STATUS EFIAPI ConSplitterTextOutTestString (IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This, IN CHAR16 *WString)
 
EFI_STATUS EFIAPI ConSplitterTextOutQueryMode (IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This, IN UINTN ModeNumber, OUT UINTN *Columns, OUT UINTN *Rows)
 
EFI_STATUS EFIAPI ConSplitterTextOutSetMode (IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This, IN UINTN ModeNumber)
 
EFI_STATUS EFIAPI ConSplitterTextOutSetAttribute (IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This, IN UINTN Attribute)
 
EFI_STATUS EFIAPI ConSplitterTextOutClearScreen (IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This)
 
EFI_STATUS EFIAPI ConSplitterTextOutSetCursorPosition (IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This, IN UINTN Column, IN UINTN Row)
 
EFI_STATUS EFIAPI ConSplitterTextOutEnableCursor (IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This, IN BOOLEAN Visible)
 
EFI_STATUS ConSplitterGrowBuffer (IN UINTN ElementSize, IN OUT UINTN *Count, IN OUT VOID **Buffer)
 
EFI_STATUS EFIAPI ConSplitterGraphicsOutputQueryMode (IN EFI_GRAPHICS_OUTPUT_PROTOCOL *This, IN UINT32 ModeNumber, OUT UINTN *SizeOfInfo, OUT EFI_GRAPHICS_OUTPUT_MODE_INFORMATION **Info)
 
EFI_STATUS EFIAPI ConSplitterGraphicsOutputSetMode (IN EFI_GRAPHICS_OUTPUT_PROTOCOL *This, IN UINT32 ModeNumber)
 
EFI_STATUS EFIAPI ConSplitterGraphicsOutputBlt (IN EFI_GRAPHICS_OUTPUT_PROTOCOL *This, IN EFI_GRAPHICS_OUTPUT_BLT_PIXEL *BltBuffer OPTIONAL, IN EFI_GRAPHICS_OUTPUT_BLT_OPERATION BltOperation, IN UINTN SourceX, IN UINTN SourceY, IN UINTN DestinationX, IN UINTN DestinationY, IN UINTN Width, IN UINTN Height, IN UINTN Delta OPTIONAL)
 
EFI_STATUS EFIAPI ConSplitterUgaDrawGetMode (IN EFI_UGA_DRAW_PROTOCOL *This, OUT UINT32 *HorizontalResolution, OUT UINT32 *VerticalResolution, OUT UINT32 *ColorDepth, OUT UINT32 *RefreshRate)
 
EFI_STATUS EFIAPI ConSplitterUgaDrawSetMode (IN EFI_UGA_DRAW_PROTOCOL *This, IN UINT32 HorizontalResolution, IN UINT32 VerticalResolution, IN UINT32 ColorDepth, IN UINT32 RefreshRate)
 
EFI_STATUS EFIAPI ConSplitterUgaDrawBlt (IN EFI_UGA_DRAW_PROTOCOL *This, IN EFI_UGA_PIXEL *BltBuffer OPTIONAL, IN EFI_UGA_BLT_OPERATION BltOperation, IN UINTN SourceX, IN UINTN SourceY, IN UINTN DestinationX, IN UINTN DestinationY, IN UINTN Width, IN UINTN Height, IN UINTN Delta OPTIONAL)
 
VOID TextOutSetMode (IN TEXT_OUT_SPLITTER_PRIVATE_DATA *Private, IN UINTN ModeNumber)
 

Variables

EFI_DRIVER_BINDING_PROTOCOL gConSplitterConInDriverBinding
 
EFI_COMPONENT_NAME_PROTOCOL gConSplitterConInComponentName
 
EFI_COMPONENT_NAME2_PROTOCOL gConSplitterConInComponentName2
 
EFI_DRIVER_BINDING_PROTOCOL gConSplitterSimplePointerDriverBinding
 
EFI_COMPONENT_NAME_PROTOCOL gConSplitterSimplePointerComponentName
 
EFI_COMPONENT_NAME2_PROTOCOL gConSplitterSimplePointerComponentName2
 
EFI_DRIVER_BINDING_PROTOCOL gConSplitterAbsolutePointerDriverBinding
 
EFI_COMPONENT_NAME_PROTOCOL gConSplitterAbsolutePointerComponentName
 
EFI_COMPONENT_NAME2_PROTOCOL gConSplitterAbsolutePointerComponentName2
 
EFI_DRIVER_BINDING_PROTOCOL gConSplitterConOutDriverBinding
 
EFI_COMPONENT_NAME_PROTOCOL gConSplitterConOutComponentName
 
EFI_COMPONENT_NAME2_PROTOCOL gConSplitterConOutComponentName2
 
EFI_DRIVER_BINDING_PROTOCOL gConSplitterStdErrDriverBinding
 
EFI_COMPONENT_NAME_PROTOCOL gConSplitterStdErrComponentName
 
EFI_COMPONENT_NAME2_PROTOCOL gConSplitterStdErrComponentName2
 

Detailed Description

Private data structures for the Console Splitter driver

Copyright (c) 2006 - 2019, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent

Definition in file ConSplitter.h.

Macro Definition Documentation

◆ CONSOLE_CONTROL_SPLITTER_PRIVATE_DATA_FROM_THIS

#define CONSOLE_CONTROL_SPLITTER_PRIVATE_DATA_FROM_THIS (   a)
Value:
CR ((a), \
ConsoleControl, \
TEXT_OUT_SPLITTER_PRIVATE_DATA_SIGNATURE \
)
#define CR(Record, TYPE, Field, TestSignature)
Definition: DebugLib.h:659

Definition at line 240 of file ConSplitter.h.

◆ CONSOLE_SPLITTER_ALLOC_UNIT

#define CONSOLE_SPLITTER_ALLOC_UNIT   32

Definition at line 70 of file ConSplitter.h.

◆ GRAPHICS_OUTPUT_SPLITTER_PRIVATE_DATA_FROM_THIS

#define GRAPHICS_OUTPUT_SPLITTER_PRIVATE_DATA_FROM_THIS (   a)
Value:
CR ((a), \
GraphicsOutput, \
TEXT_OUT_SPLITTER_PRIVATE_DATA_SIGNATURE \
)

Definition at line 226 of file ConSplitter.h.

◆ KEY_STATE_VALID_EXPOSED

#define KEY_STATE_VALID_EXPOSED   (EFI_TOGGLE_STATE_VALID | EFI_KEY_STATE_EXPOSED)

Definition at line 82 of file ConSplitter.h.

◆ TEXT_IN_EX_SPLITTER_NOTIFY_FROM_THIS

#define TEXT_IN_EX_SPLITTER_NOTIFY_FROM_THIS (   a)
Value:
CR ((a), \
NotifyEntry, \
TEXT_IN_EX_SPLITTER_NOTIFY_SIGNATURE \
)

Definition at line 97 of file ConSplitter.h.

◆ TEXT_IN_EX_SPLITTER_NOTIFY_SIGNATURE

#define TEXT_IN_EX_SPLITTER_NOTIFY_SIGNATURE   SIGNATURE_32 ('T', 'i', 'S', 'n')

Definition at line 84 of file ConSplitter.h.

◆ TEXT_IN_EX_SPLITTER_PRIVATE_DATA_FROM_THIS

#define TEXT_IN_EX_SPLITTER_PRIVATE_DATA_FROM_THIS (   a)
Value:
CR (a, \
TextInEx, \
TEXT_IN_SPLITTER_PRIVATE_DATA_SIGNATURE \
)

Definition at line 167 of file ConSplitter.h.

◆ TEXT_IN_SPLITTER_PRIVATE_DATA_FROM_ABSOLUTE_POINTER_THIS

#define TEXT_IN_SPLITTER_PRIVATE_DATA_FROM_ABSOLUTE_POINTER_THIS (   a)
Value:
CR (a, \
AbsolutePointer, \
TEXT_IN_SPLITTER_PRIVATE_DATA_SIGNATURE \
)

Definition at line 174 of file ConSplitter.h.

◆ TEXT_IN_SPLITTER_PRIVATE_DATA_FROM_SIMPLE_POINTER_THIS

#define TEXT_IN_SPLITTER_PRIVATE_DATA_FROM_SIMPLE_POINTER_THIS (   a)
Value:
CR ((a), \
SimplePointer, \
TEXT_IN_SPLITTER_PRIVATE_DATA_SIGNATURE \
)

Definition at line 161 of file ConSplitter.h.

◆ TEXT_IN_SPLITTER_PRIVATE_DATA_FROM_THIS

#define TEXT_IN_SPLITTER_PRIVATE_DATA_FROM_THIS (   a)
Value:
CR ((a), \
TextIn, \
TEXT_IN_SPLITTER_PRIVATE_DATA_SIGNATURE \
)

Definition at line 154 of file ConSplitter.h.

◆ TEXT_IN_SPLITTER_PRIVATE_DATA_SIGNATURE

#define TEXT_IN_SPLITTER_PRIVATE_DATA_SIGNATURE   SIGNATURE_32 ('T', 'i', 'S', 'p')

Definition at line 104 of file ConSplitter.h.

◆ TEXT_OUT_SPLITTER_PRIVATE_DATA_FROM_THIS

#define TEXT_OUT_SPLITTER_PRIVATE_DATA_FROM_THIS (   a)
Value:
CR ((a), \
TextOut, \
TEXT_OUT_SPLITTER_PRIVATE_DATA_SIGNATURE \
)

Definition at line 219 of file ConSplitter.h.

◆ TEXT_OUT_SPLITTER_PRIVATE_DATA_SIGNATURE

#define TEXT_OUT_SPLITTER_PRIVATE_DATA_SIGNATURE   SIGNATURE_32 ('T', 'o', 'S', 'p')

Definition at line 181 of file ConSplitter.h.

◆ UGA_DRAW_SPLITTER_PRIVATE_DATA_FROM_THIS

#define UGA_DRAW_SPLITTER_PRIVATE_DATA_FROM_THIS (   a)
Value:
CR ((a), \
UgaDraw, \
TEXT_OUT_SPLITTER_PRIVATE_DATA_SIGNATURE \
)

Definition at line 233 of file ConSplitter.h.

◆ UNICODE_NARROW_CHAR

#define UNICODE_NARROW_CHAR   0xFFF0

Definition at line 64 of file ConSplitter.h.

◆ UNICODE_WIDE_CHAR

#define UNICODE_WIDE_CHAR   0xFFF1

Definition at line 65 of file ConSplitter.h.

Function Documentation

◆ ConSplitterAbsolutePointerAddDevice()

EFI_STATUS ConSplitterAbsolutePointerAddDevice ( IN TEXT_IN_SPLITTER_PRIVATE_DATA Private,
IN EFI_ABSOLUTE_POINTER_PROTOCOL AbsolutePointer 
)

Add Absolute Pointer Device in Consplitter Absolute Pointer list.

Parameters
PrivateText In Splitter pointer.
AbsolutePointerAbsolute Pointer protocol pointer.
Return values
EFI_SUCCESSAbsolute Pointer Device added successfully.
EFI_OUT_OF_RESOURCESCould not grow the buffer size.

Definition at line 2169 of file ConSplitter.c.

◆ ConSplitterAbsolutePointerComponentNameGetControllerName()

EFI_STATUS EFIAPI ConSplitterAbsolutePointerComponentNameGetControllerName ( IN EFI_COMPONENT_NAME_PROTOCOL This,
IN EFI_HANDLE  ControllerHandle,
IN EFI_HANDLE ChildHandle  OPTIONAL,
IN CHAR8 *  Language,
OUT CHAR16 **  ControllerName 
)

Retrieves a Unicode string that is the user readable name of the controller that is being managed by an EFI Driver.

Parameters
ThisA pointer to the EFI_COMPONENT_NAME_PROTOCOL instance.
ControllerHandleThe handle of a controller that the driver specified by This is managing. This handle specifies the controller whose name is to be returned.
ChildHandleThe handle of the child controller to retrieve the name of. This is an optional parameter that may be NULL. It will be NULL for device drivers. It will also be NULL for a bus drivers that wish to retrieve the name of the bus controller. It will not be NULL for a bus driver that wishes to retrieve the name of a child controller.
LanguageA pointer to RFC4646 language identifier. This is the language of the controller name that that the caller is requesting, and it must match one of the languages specified in SupportedLanguages. The number of languages supported by a driver is up to the driver writer.
ControllerNameA pointer to the Unicode string to return. This Unicode string is the name of the controller specified by ControllerHandle and ChildHandle in the language specified by Language from the point of view of the driver specified by This.
Return values
EFI_SUCCESSThe Unicode string for the user readable name in the language specified by Language for the driver specified by This was returned in DriverName.
EFI_INVALID_PARAMETERControllerHandle is NULL.
EFI_INVALID_PARAMETERChildHandle is not NULL and it is not a valid EFI_HANDLE.
EFI_INVALID_PARAMETERLanguage is NULL.
EFI_INVALID_PARAMETERControllerName is NULL.
EFI_UNSUPPORTEDThe driver specified by This is not currently managing the controller specified by ControllerHandle and ChildHandle.
EFI_UNSUPPORTEDThe driver specified by This does not support the language specified by Language.

Definition at line 538 of file ComponentName.c.

◆ ConSplitterAbsolutePointerDeleteDevice()

EFI_STATUS ConSplitterAbsolutePointerDeleteDevice ( IN TEXT_IN_SPLITTER_PRIVATE_DATA Private,
IN EFI_ABSOLUTE_POINTER_PROTOCOL AbsolutePointer 
)

Remove Absolute Pointer Device from Consplitter Absolute Pointer list.

Parameters
PrivateText In Splitter pointer.
AbsolutePointerAbsolute Pointer protocol pointer.
Return values
EFI_SUCCESSAbsolute Pointer Device removed successfully.
EFI_NOT_FOUNDNo Absolute Pointer Device found.

Definition at line 2210 of file ConSplitter.c.

◆ ConSplitterAbsolutePointerDriverBindingStart()

EFI_STATUS EFIAPI ConSplitterAbsolutePointerDriverBindingStart ( IN EFI_DRIVER_BINDING_PROTOCOL This,
IN EFI_HANDLE  ControllerHandle,
IN EFI_DEVICE_PATH_PROTOCOL RemainingDevicePath 
)

Start Absolute Pointer Consplitter on device handle.

Parameters
ThisDriver Binding protocol instance pointer.
ControllerHandleHandle of device to bind driver to.
RemainingDevicePathOptional parameter use to pick a specific child device to start.
Return values
EFI_SUCCESSAbsolute Pointer Consplitter is added to ControllerHandle.
otherAbsolute Pointer Consplitter does not support this device.

Definition at line 1283 of file ConSplitter.c.

◆ ConSplitterAbsolutePointerDriverBindingStop()

EFI_STATUS EFIAPI ConSplitterAbsolutePointerDriverBindingStop ( IN EFI_DRIVER_BINDING_PROTOCOL This,
IN EFI_HANDLE  ControllerHandle,
IN UINTN  NumberOfChildren,
IN EFI_HANDLE ChildHandleBuffer 
)

Stop Absolute Pointer protocol ConSplitter on ControllerHandle by closing Absolute Pointer protocol.

Parameters
ThisDriver Binding protocol instance pointer.
ControllerHandleHandle of device to stop driver on
NumberOfChildrenNumber of Handles in ChildHandleBuffer. If number of children is zero stop the entire bus driver.
ChildHandleBufferList of Child Handles to Stop.
Return values
EFI_SUCCESSThis driver is removed ControllerHandle
otherThis driver was not removed from this device

Definition at line 1683 of file ConSplitter.c.

◆ ConSplitterAbsolutePointerDriverBindingSupported()

EFI_STATUS EFIAPI ConSplitterAbsolutePointerDriverBindingSupported ( IN EFI_DRIVER_BINDING_PROTOCOL This,
IN EFI_HANDLE  ControllerHandle,
IN EFI_DEVICE_PATH_PROTOCOL RemainingDevicePath 
)

Test to see if Absolute Pointer protocol could be supported on the Controller.

Parameters
ThisDriver Binding protocol instance pointer.
ControllerHandleHandle of device to test.
RemainingDevicePathOptional parameter use to pick a specific child device to start.
Return values
EFI_SUCCESSThis driver supports this device.
otherThis driver does not support this device.

Definition at line 990 of file ConSplitter.c.

◆ ConSplitterAbsolutePointerGetState()

EFI_STATUS EFIAPI ConSplitterAbsolutePointerGetState ( IN EFI_ABSOLUTE_POINTER_PROTOCOL This,
IN OUT EFI_ABSOLUTE_POINTER_STATE State 
)

Retrieves the current state of a pointer device.

Parameters
ThisProtocol instance pointer.
StateA pointer to the state information on the pointer device.
Return values
EFI_SUCCESSThe state of the pointer device was returned in State..
EFI_NOT_READYThe state of the pointer device has not changed since the last call to GetState().
EFI_DEVICE_ERRORA device error occurred while attempting to retrieve the pointer device's current state.

Definition at line 4414 of file ConSplitter.c.

◆ ConSplitterAbsolutePointerReset()

EFI_STATUS EFIAPI ConSplitterAbsolutePointerReset ( IN EFI_ABSOLUTE_POINTER_PROTOCOL This,
IN BOOLEAN  ExtendedVerification 
)

Resets the pointer device hardware.

Parameters
ThisProtocol instance pointer.
ExtendedVerificationDriver may perform diagnostics on reset.
Return values
EFI_SUCCESSThe device was reset.
EFI_DEVICE_ERRORThe device is not functioning correctly and could not be reset.

Definition at line 4363 of file ConSplitter.c.

◆ ConSplitterAbsolutePointerWaitForInput()

VOID EFIAPI ConSplitterAbsolutePointerWaitForInput ( IN EFI_EVENT  Event,
IN VOID *  Context 
)

This event agregates all the events of the pointer devices in the splitter.

If any events of physical pointer devices are signaled, signal the pointer splitter event. This will cause the calling code to call ConSplitterAbsolutePointerGetState ().

Parameters
EventThe Event assoicated with callback.
ContextContext registered when Event was created.

This event aggregates all the events of the pointer devices in the splitter. If any events of physical pointer devices are signaled, signal the pointer splitter event. This will cause the calling code to call ConSplitterAbsolutePointerGetState ().

Parameters
EventThe Event associated with callback.
ContextContext registered when Event was created.

Definition at line 4533 of file ConSplitter.c.

◆ ConSplitterComponentNameGetDriverName()

EFI_STATUS EFIAPI ConSplitterComponentNameGetDriverName ( IN EFI_COMPONENT_NAME_PROTOCOL This,
IN CHAR8 *  Language,
OUT CHAR16 **  DriverName 
)

Retrieves a Unicode string that is the user readable name of the driver.

This function retrieves the user readable name of a driver in the form of a Unicode string. If the driver specified by This has a user readable name in the language specified by Language, then a pointer to the driver name is returned in DriverName, and EFI_SUCCESS is returned. If the driver specified by This does not support the language specified by Language, then EFI_UNSUPPORTED is returned.

Parameters
This[in]A pointer to the EFI_COMPONENT_NAME2_PROTOCOL or EFI_COMPONENT_NAME_PROTOCOL instance.
Language[in]A pointer to a Null-terminated ASCII string array indicating the language. This is the language of the driver name that the caller is requesting, and it must match one of the languages specified in SupportedLanguages. The number of languages supported by a driver is up to the driver writer. Language is specified in RFC 4646 or ISO 639-2 language code format.
DriverName[out]A pointer to the Unicode string to return. This Unicode string is the name of the driver specified by This in the language specified by Language.
Return values
EFI_SUCCESSThe Unicode string for the Driver specified by This and the language specified by Language was returned in DriverName.
EFI_INVALID_PARAMETERLanguage is NULL.
EFI_INVALID_PARAMETERDriverName is NULL.
EFI_UNSUPPORTEDThe driver specified by This does not support the language specified by Language.

Definition at line 208 of file ComponentName.c.

◆ ConSplitterConInComponentNameGetControllerName()

EFI_STATUS EFIAPI ConSplitterConInComponentNameGetControllerName ( IN EFI_COMPONENT_NAME_PROTOCOL This,
IN EFI_HANDLE  ControllerHandle,
IN EFI_HANDLE ChildHandle  OPTIONAL,
IN CHAR8 *  Language,
OUT CHAR16 **  ControllerName 
)

Retrieves a Unicode string that is the user readable name of the controller that is being managed by a driver.

This function retrieves the user readable name of the controller specified by ControllerHandle and ChildHandle in the form of a Unicode string. If the driver specified by This has a user readable name in the language specified by Language, then a pointer to the controller name is returned in ControllerName, and EFI_SUCCESS is returned. If the driver specified by This is not currently managing the controller specified by ControllerHandle and ChildHandle, then EFI_UNSUPPORTED is returned. If the driver specified by This does not support the language specified by Language, then EFI_UNSUPPORTED is returned.

Parameters
This[in]A pointer to the EFI_COMPONENT_NAME2_PROTOCOL or EFI_COMPONENT_NAME_PROTOCOL instance.
ControllerHandle[in]The handle of a controller that the driver specified by This is managing. This handle specifies the controller whose name is to be returned.
ChildHandle[in]The handle of the child controller to retrieve the name of. This is an optional parameter that may be NULL. It will be NULL for device drivers. It will also be NULL for a bus drivers that wish to retrieve the name of the bus controller. It will not be NULL for a bus driver that wishes to retrieve the name of a child controller.
Language[in]A pointer to a Null-terminated ASCII string array indicating the language. This is the language of the driver name that the caller is requesting, and it must match one of the languages specified in SupportedLanguages. The number of languages supported by a driver is up to the driver writer. Language is specified in RFC 4646 or ISO 639-2 language code format.
ControllerName[out]A pointer to the Unicode string to return. This Unicode string is the name of the controller specified by ControllerHandle and ChildHandle in the language specified by Language from the point of view of the driver specified by This.
Return values
EFI_SUCCESSThe Unicode string for the user readable name in the language specified by Language for the driver specified by This was returned in DriverName.
EFI_INVALID_PARAMETERControllerHandle is NULL.
EFI_INVALID_PARAMETERChildHandle is not NULL and it is not a valid EFI_HANDLE.
EFI_INVALID_PARAMETERLanguage is NULL.
EFI_INVALID_PARAMETERControllerName is NULL.
EFI_UNSUPPORTEDThe driver specified by This is not currently managing the controller specified by ControllerHandle and ChildHandle.
EFI_UNSUPPORTEDThe driver specified by This does not support the language specified by Language.

Definition at line 362 of file ComponentName.c.

◆ ConSplitterConInDriverBindingStart()

EFI_STATUS EFIAPI ConSplitterConInDriverBindingStart ( IN EFI_DRIVER_BINDING_PROTOCOL This,
IN EFI_HANDLE  ControllerHandle,
IN EFI_DEVICE_PATH_PROTOCOL RemainingDevicePath 
)

Start Console In Consplitter on device handle.

Parameters
ThisDriver Binding protocol instance pointer.
ControllerHandleHandle of device to bind driver to.
RemainingDevicePathOptional parameter use to pick a specific child device to start.
Return values
EFI_SUCCESSConsole In Consplitter is added to ControllerHandle.
otherConsole In Consplitter does not support this device.

Definition at line 1171 of file ConSplitter.c.

◆ ConSplitterConInDriverBindingStop()

EFI_STATUS EFIAPI ConSplitterConInDriverBindingStop ( IN EFI_DRIVER_BINDING_PROTOCOL This,
IN EFI_HANDLE  ControllerHandle,
IN UINTN  NumberOfChildren,
IN EFI_HANDLE ChildHandleBuffer 
)

Stop Console In ConSplitter on ControllerHandle by closing Console In Devcice GUID.

Parameters
ThisDriver Binding protocol instance pointer.
ControllerHandleHandle of device to stop driver on
NumberOfChildrenNumber of Handles in ChildHandleBuffer. If number of children is zero stop the entire bus driver.
ChildHandleBufferList of Child Handles to Stop.
Return values
EFI_SUCCESSThis driver is removed ControllerHandle
otherThis driver was not removed from this device

Stop Console In ConSplitter on ControllerHandle by closing Console In Device GUID.

Parameters
ThisDriver Binding protocol instance pointer.
ControllerHandleHandle of device to stop driver on
NumberOfChildrenNumber of Handles in ChildHandleBuffer. If number of children is zero stop the entire bus driver.
ChildHandleBufferList of Child Handles to Stop.
Return values
EFI_SUCCESSThis driver is removed ControllerHandle
otherThis driver was not removed from this device

Definition at line 1561 of file ConSplitter.c.

◆ ConSplitterConInDriverBindingSupported()

EFI_STATUS EFIAPI ConSplitterConInDriverBindingSupported ( IN EFI_DRIVER_BINDING_PROTOCOL This,
IN EFI_HANDLE  ControllerHandle,
IN EFI_DEVICE_PATH_PROTOCOL RemainingDevicePath 
)

Test to see if Console In Device could be supported on the Controller.

Parameters
ThisDriver Binding protocol instance pointer.
ControllerHandleHandle of device to test.
RemainingDevicePathOptional parameter use to pick a specific child device to start.
Return values
EFI_SUCCESSThis driver supports this device.
otherThis driver does not support this device.

Definition at line 936 of file ConSplitter.c.

◆ ConSplitterConOutComponentNameGetControllerName()

EFI_STATUS EFIAPI ConSplitterConOutComponentNameGetControllerName ( IN EFI_COMPONENT_NAME_PROTOCOL This,
IN EFI_HANDLE  ControllerHandle,
IN EFI_HANDLE ChildHandle  OPTIONAL,
IN CHAR8 *  Language,
OUT CHAR16 **  ControllerName 
)

Retrieves a Unicode string that is the user readable name of the controller that is being managed by a driver.

This function retrieves the user readable name of the controller specified by ControllerHandle and ChildHandle in the form of a Unicode string. If the driver specified by This has a user readable name in the language specified by Language, then a pointer to the controller name is returned in ControllerName, and EFI_SUCCESS is returned. If the driver specified by This is not currently managing the controller specified by ControllerHandle and ChildHandle, then EFI_UNSUPPORTED is returned. If the driver specified by This does not support the language specified by Language, then EFI_UNSUPPORTED is returned.

Parameters
This[in]A pointer to the EFI_COMPONENT_NAME2_PROTOCOL or EFI_COMPONENT_NAME_PROTOCOL instance.
ControllerHandle[in]The handle of a controller that the driver specified by This is managing. This handle specifies the controller whose name is to be returned.
ChildHandle[in]The handle of the child controller to retrieve the name of. This is an optional parameter that may be NULL. It will be NULL for device drivers. It will also be NULL for a bus drivers that wish to retrieve the name of the bus controller. It will not be NULL for a bus driver that wishes to retrieve the name of a child controller.
Language[in]A pointer to a Null-terminated ASCII string array indicating the language. This is the language of the driver name that the caller is requesting, and it must match one of the languages specified in SupportedLanguages. The number of languages supported by a driver is up to the driver writer. Language is specified in RFC 4646 or ISO 639-2 language code format.
ControllerName[out]A pointer to the Unicode string to return. This Unicode string is the name of the controller specified by ControllerHandle and ChildHandle in the language specified by Language from the point of view of the driver specified by This.
Return values
EFI_SUCCESSThe Unicode string for the user readable name in the language specified by Language for the driver specified by This was returned in DriverName.
EFI_INVALID_PARAMETERControllerHandle is NULL.
EFI_INVALID_PARAMETERChildHandle is not NULL and it is not a valid EFI_HANDLE.
EFI_INVALID_PARAMETERLanguage is NULL.
EFI_INVALID_PARAMETERControllerName is NULL.
EFI_UNSUPPORTEDThe driver specified by This is not currently managing the controller specified by ControllerHandle and ChildHandle.
EFI_UNSUPPORTEDThe driver specified by This does not support the language specified by Language.

Definition at line 638 of file ComponentName.c.

◆ ConSplitterConOutDriverBindingStart()

EFI_STATUS EFIAPI ConSplitterConOutDriverBindingStart ( IN EFI_DRIVER_BINDING_PROTOCOL This,
IN EFI_HANDLE  ControllerHandle,
IN EFI_DEVICE_PATH_PROTOCOL RemainingDevicePath 
)

Start Console Out Consplitter on device handle.

Parameters
ThisDriver Binding protocol instance pointer.
ControllerHandleHandle of device to bind driver to.
RemainingDevicePathOptional parameter use to pick a specific child device to start.
Return values
EFI_SUCCESSConsole Out Consplitter is added to ControllerHandle.
otherConsole Out Consplitter does not support this device.

Definition at line 1329 of file ConSplitter.c.

◆ ConSplitterConOutDriverBindingStop()

EFI_STATUS EFIAPI ConSplitterConOutDriverBindingStop ( IN EFI_DRIVER_BINDING_PROTOCOL This,
IN EFI_HANDLE  ControllerHandle,
IN UINTN  NumberOfChildren,
IN EFI_HANDLE ChildHandleBuffer 
)

Stop Console Out ConSplitter on device handle by closing Console Out Devcice GUID.

Parameters
ThisDriver Binding protocol instance pointer.
ControllerHandleHandle of device to stop driver on
NumberOfChildrenNumber of Handles in ChildHandleBuffer. If number of children is zero stop the entire bus driver.
ChildHandleBufferList of Child Handles to Stop.
Return values
EFI_SUCCESSThis driver is removed ControllerHandle
otherThis driver was not removed from this device

Stop Console Out ConSplitter on device handle by closing Console Out Devcie GUID.

Parameters
ThisDriver Binding protocol instance pointer.
ControllerHandleHandle of device to stop driver on
NumberOfChildrenNumber of Handles in ChildHandleBuffer. If number of children is zero stop the entire bus driver.
ChildHandleBufferList of Child Handles to Stop.
Return values
EFI_SUCCESSThis driver is removed ControllerHandle
otherThis driver was not removed from this device

Definition at line 1733 of file ConSplitter.c.

◆ ConSplitterConOutDriverBindingSupported()

EFI_STATUS EFIAPI ConSplitterConOutDriverBindingSupported ( IN EFI_DRIVER_BINDING_PROTOCOL This,
IN EFI_HANDLE  ControllerHandle,
IN EFI_DEVICE_PATH_PROTOCOL RemainingDevicePath 
)

Test to see if Console Out Device could be supported on the Controller.

Parameters
ThisDriver Binding protocol instance pointer.
ControllerHandleHandle of device to test.
RemainingDevicePathOptional parameter use to pick a specific child device to start.
Return values
EFI_SUCCESSThis driver supports this device.
otherThis driver does not support this device.

Definition at line 1017 of file ConSplitter.c.

◆ ConSplitterDriverEntry()

EFI_STATUS EFIAPI ConSplitterDriverEntry ( IN EFI_HANDLE  ImageHandle,
IN EFI_SYSTEM_TABLE SystemTable 
)

The user Entry Point for module ConSplitter. The user code starts with this function.

Installs driver module protocols and. Creates virtual device handles for ConIn, ConOut, and StdErr. Installs Simple Text In protocol, Simple Text In Ex protocol, Simple Pointer protocol, Absolute Pointer protocol on those virtual handlers. Installs Graphics Output protocol and/or UGA Draw protocol if needed.

Parameters
[in]ImageHandleThe firmware allocated handle for the EFI image.
[in]SystemTableA pointer to the EFI System Table.
Return values
EFI_SUCCESSThe entry point is executed successfully.
otherSome error occurs when executing this entry point.

The Entry Point for module ConSplitter. The user code starts with this function.

Installs driver module protocols and. Creates virtual device handles for ConIn, ConOut, and StdErr. Installs Simple Text In protocol, Simple Text In Ex protocol, Simple Pointer protocol, Absolute Pointer protocol on those virtual handlers. Installs Graphics Output protocol and/or UGA Draw protocol if needed.

Parameters
[in]ImageHandleThe firmware allocated handle for the EFI image.
[in]SystemTableA pointer to the EFI System Table.
Return values
EFI_SUCCESSThe entry point is executed successfully.
otherSome error occurs when executing this entry point.

Definition at line 436 of file ConSplitter.c.

◆ ConSplitterGraphicsOutputBlt()

EFI_STATUS EFIAPI ConSplitterGraphicsOutputBlt ( IN EFI_GRAPHICS_OUTPUT_PROTOCOL This,
IN EFI_GRAPHICS_OUTPUT_BLT_PIXEL *BltBuffer  OPTIONAL,
IN EFI_GRAPHICS_OUTPUT_BLT_OPERATION  BltOperation,
IN UINTN  SourceX,
IN UINTN  SourceY,
IN UINTN  DestinationX,
IN UINTN  DestinationY,
IN UINTN  Width,
IN UINTN  Height,
IN UINTN Delta  OPTIONAL 
)

The following table defines actions for BltOperations.

EfiBltVideoFill - Write data from the BltBuffer pixel (SourceX, SourceY) directly to every pixel of the video display rectangle (DestinationX, DestinationY) (DestinationX + Width, DestinationY + Height). Only one pixel will be used from the BltBuffer. Delta is NOT used. EfiBltVideoToBltBuffer - Read data from the video display rectangle (SourceX, SourceY) (SourceX + Width, SourceY + Height) and place it in the BltBuffer rectangle (DestinationX, DestinationY ) (DestinationX + Width, DestinationY + Height). If DestinationX or DestinationY is not zero then Delta must be set to the length in bytes of a row in the BltBuffer. EfiBltBufferToVideo - Write data from the BltBuffer rectangle (SourceX, SourceY) (SourceX + Width, SourceY + Height) directly to the video display rectangle (DestinationX, DestinationY) (DestinationX + Width, DestinationY + Height). If SourceX or SourceY is not zero then Delta must be set to the length in bytes of a row in the BltBuffer. EfiBltVideoToVideo - Copy from the video display rectangle (SourceX, SourceY) (SourceX + Width, SourceY + Height) . to the video display rectangle (DestinationX, DestinationY) (DestinationX + Width, DestinationY + Height). The BltBuffer and Delta are not used in this mode.

Parameters
ThisProtocol instance pointer.
BltBufferBuffer containing data to blit into video buffer. This buffer has a size of Width*Height*sizeof(EFI_GRAPHICS_OUTPUT_BLT_PIXEL)
BltOperationOperation to perform on BlitBuffer and video memory
SourceXX coordinate of source for the BltBuffer.
SourceYY coordinate of source for the BltBuffer.
DestinationXX coordinate of destination for the BltBuffer.
DestinationYY coordinate of destination for the BltBuffer.
WidthWidth of rectangle in BltBuffer in pixels.
HeightHight of rectangle in BltBuffer in pixels.
DeltaOPTIONAL.
Return values
EFI_SUCCESSThe Blt operation completed.
EFI_INVALID_PARAMETERBltOperation is not valid.
EFI_DEVICE_ERRORA hardware error occurred writting to the video buffer.

Definition at line 246 of file ConSplitterGraphics.c.

◆ ConSplitterGraphicsOutputQueryMode()

EFI_STATUS EFIAPI ConSplitterGraphicsOutputQueryMode ( IN EFI_GRAPHICS_OUTPUT_PROTOCOL This,
IN UINT32  ModeNumber,
OUT UINTN SizeOfInfo,
OUT EFI_GRAPHICS_OUTPUT_MODE_INFORMATION **  Info 
)

Returns information for an available graphics mode that the graphics device and the set of active video output devices supports.

Parameters
ThisThe EFI_GRAPHICS_OUTPUT_PROTOCOL instance.
ModeNumberThe mode number to return information on.
SizeOfInfoA pointer to the size, in bytes, of the Info buffer.
InfoA pointer to callee allocated buffer that returns information about ModeNumber.
Return values
EFI_SUCCESSMode information returned.
EFI_BUFFER_TOO_SMALLThe Info buffer was too small.
EFI_DEVICE_ERRORA hardware error occurred trying to retrieve the video mode.
EFI_INVALID_PARAMETEROne of the input args was NULL.
EFI_OUT_OF_RESOURCESNo resource available.

Definition at line 32 of file ConSplitterGraphics.c.

◆ ConSplitterGraphicsOutputSetMode()

EFI_STATUS EFIAPI ConSplitterGraphicsOutputSetMode ( IN EFI_GRAPHICS_OUTPUT_PROTOCOL This,
IN UINT32  ModeNumber 
)

Set the video device into the specified mode and clears the visible portions of the output display to black.

Parameters
ThisThe EFI_GRAPHICS_OUTPUT_PROTOCOL instance.
ModeNumberAbstraction that defines the current video mode.
Return values
EFI_SUCCESSThe graphics mode specified by ModeNumber was selected.
EFI_DEVICE_ERRORThe device had an error and could not complete the request.
EFI_UNSUPPORTEDModeNumber is not supported by this device.
EFI_OUT_OF_RESOURCESNo resource available.

Definition at line 105 of file ConSplitterGraphics.c.

◆ ConSplitterGrowBuffer()

EFI_STATUS ConSplitterGrowBuffer ( IN UINTN  ElementSize,
IN OUT UINTN Count,
IN OUT VOID **  Buffer 
)

Take the passed in Buffer of size ElementSize and grow the buffer by CONSOLE_SPLITTER_ALLOC_UNIT * ElementSize bytes. Copy the current data in Buffer to the new version of Buffer and free the old version of buffer.

Parameters
ElementSizeSize of element in array.
CountCurrent number of elements in array.
BufferBigger version of passed in Buffer with all the data.
Return values
EFI_SUCCESSBuffer size has grown.
EFI_OUT_OF_RESOURCESCould not grow the buffer size.

Definition at line 1834 of file ConSplitter.c.

◆ ConSplitterSimplePointerAddDevice()

EFI_STATUS ConSplitterSimplePointerAddDevice ( IN TEXT_IN_SPLITTER_PRIVATE_DATA Private,
IN EFI_SIMPLE_POINTER_PROTOCOL SimplePointer 
)

Add Simple Pointer Device in Consplitter Simple Pointer list.

Parameters
PrivateText In Splitter pointer.
SimplePointerSimple Pointer protocol pointer.
Return values
EFI_SUCCESSSimple Pointer Device added successfully.
EFI_OUT_OF_RESOURCESCould not grow the buffer size.

Definition at line 2092 of file ConSplitter.c.

◆ ConSplitterSimplePointerComponentNameGetControllerName()

EFI_STATUS EFIAPI ConSplitterSimplePointerComponentNameGetControllerName ( IN EFI_COMPONENT_NAME_PROTOCOL This,
IN EFI_HANDLE  ControllerHandle,
IN EFI_HANDLE ChildHandle  OPTIONAL,
IN CHAR8 *  Language,
OUT CHAR16 **  ControllerName 
)

Retrieves a Unicode string that is the user readable name of the controller that is being managed by a driver.

This function retrieves the user readable name of the controller specified by ControllerHandle and ChildHandle in the form of a Unicode string. If the driver specified by This has a user readable name in the language specified by Language, then a pointer to the controller name is returned in ControllerName, and EFI_SUCCESS is returned. If the driver specified by This is not currently managing the controller specified by ControllerHandle and ChildHandle, then EFI_UNSUPPORTED is returned. If the driver specified by This does not support the language specified by Language, then EFI_UNSUPPORTED is returned.

Parameters
This[in]A pointer to the EFI_COMPONENT_NAME2_PROTOCOL or EFI_COMPONENT_NAME_PROTOCOL instance.
ControllerHandle[in]The handle of a controller that the driver specified by This is managing. This handle specifies the controller whose name is to be returned.
ChildHandle[in]The handle of the child controller to retrieve the name of. This is an optional parameter that may be NULL. It will be NULL for device drivers. It will also be NULL for a bus drivers that wish to retrieve the name of the bus controller. It will not be NULL for a bus driver that wishes to retrieve the name of a child controller.
Language[in]A pointer to a Null-terminated ASCII string array indicating the language. This is the language of the driver name that the caller is requesting, and it must match one of the languages specified in SupportedLanguages. The number of languages supported by a driver is up to the driver writer. Language is specified in RFC 4646 or ISO 639-2 language code format.
ControllerName[out]A pointer to the Unicode string to return. This Unicode string is the name of the controller specified by ControllerHandle and ChildHandle in the language specified by Language from the point of view of the driver specified by This.
Return values
EFI_SUCCESSThe Unicode string for the user readable name in the language specified by Language for the driver specified by This was returned in DriverName.
EFI_INVALID_PARAMETERControllerHandle is NULL.
EFI_INVALID_PARAMETERChildHandle is not NULL and it is not a valid EFI_HANDLE.
EFI_INVALID_PARAMETERLanguage is NULL.
EFI_INVALID_PARAMETERControllerName is NULL.
EFI_UNSUPPORTEDThe driver specified by This is not currently managing the controller specified by ControllerHandle and ChildHandle.
EFI_UNSUPPORTEDThe driver specified by This does not support the language specified by Language.

Definition at line 462 of file ComponentName.c.

◆ ConSplitterSimplePointerDeleteDevice()

EFI_STATUS ConSplitterSimplePointerDeleteDevice ( IN TEXT_IN_SPLITTER_PRIVATE_DATA Private,
IN EFI_SIMPLE_POINTER_PROTOCOL SimplePointer 
)

Remove Simple Pointer Device from Consplitter Simple Pointer list.

Parameters
PrivateText In Splitter pointer.
SimplePointerSimple Pointer protocol pointer.
Return values
EFI_SUCCESSSimple Pointer Device removed successfully.
EFI_NOT_FOUNDNo Simple Pointer Device found.

Definition at line 2133 of file ConSplitter.c.

◆ ConSplitterSimplePointerDriverBindingStart()

EFI_STATUS EFIAPI ConSplitterSimplePointerDriverBindingStart ( IN EFI_DRIVER_BINDING_PROTOCOL This,
IN EFI_HANDLE  ControllerHandle,
IN EFI_DEVICE_PATH_PROTOCOL RemainingDevicePath 
)

Start Simple Pointer Consplitter on device handle.

Parameters
ThisDriver Binding protocol instance pointer.
ControllerHandleHandle of device to bind driver to.
RemainingDevicePathOptional parameter use to pick a specific child device to start.
Return values
EFI_SUCCESSSimple Pointer Consplitter is added to ControllerHandle.
otherSimple Pointer Consplitter does not support this device.

Definition at line 1238 of file ConSplitter.c.

◆ ConSplitterSimplePointerDriverBindingStop()

EFI_STATUS EFIAPI ConSplitterSimplePointerDriverBindingStop ( IN EFI_DRIVER_BINDING_PROTOCOL This,
IN EFI_HANDLE  ControllerHandle,
IN UINTN  NumberOfChildren,
IN EFI_HANDLE ChildHandleBuffer 
)

Stop Simple Pointer protocol ConSplitter on ControllerHandle by closing Simple Pointer protocol.

Parameters
ThisDriver Binding protocol instance pointer.
ControllerHandleHandle of device to stop driver on
NumberOfChildrenNumber of Handles in ChildHandleBuffer. If number of children is zero stop the entire bus driver.
ChildHandleBufferList of Child Handles to Stop.
Return values
EFI_SUCCESSThis driver is removed ControllerHandle
otherThis driver was not removed from this device

Definition at line 1632 of file ConSplitter.c.

◆ ConSplitterSimplePointerDriverBindingSupported()

EFI_STATUS EFIAPI ConSplitterSimplePointerDriverBindingSupported ( IN EFI_DRIVER_BINDING_PROTOCOL This,
IN EFI_HANDLE  ControllerHandle,
IN EFI_DEVICE_PATH_PROTOCOL RemainingDevicePath 
)

Test to see if Simple Pointer protocol could be supported on the Controller.

Parameters
ThisDriver Binding protocol instance pointer.
ControllerHandleHandle of device to test.
RemainingDevicePathOptional parameter use to pick a specific child device to start.
Return values
EFI_SUCCESSThis driver supports this device.
otherThis driver does not support this device.

Definition at line 963 of file ConSplitter.c.

◆ ConSplitterSimplePointerGetState()

EFI_STATUS EFIAPI ConSplitterSimplePointerGetState ( IN EFI_SIMPLE_POINTER_PROTOCOL This,
IN OUT EFI_SIMPLE_POINTER_STATE State 
)

Reads the next keystroke from the input device. The WaitForKey Event can be used to test for existance of a keystroke via WaitForEvent () call.

Parameters
ThisA pointer to protocol instance.
StateA pointer to state information on the pointer device
Return values
EFI_SUCCESSThe keystroke information was returned in State.
EFI_NOT_READYThere was no keystroke data availiable.
EFI_DEVICE_ERRORThe keydtroke information was not returned due to hardware errors.

Definition at line 4293 of file ConSplitter.c.

◆ ConSplitterSimplePointerReset()

EFI_STATUS EFIAPI ConSplitterSimplePointerReset ( IN EFI_SIMPLE_POINTER_PROTOCOL This,
IN BOOLEAN  ExtendedVerification 
)

Reset the input device and optionaly run diagnostics

Parameters
ThisProtocol instance pointer.
ExtendedVerificationDriver may perform diagnostics on reset.
Return values
EFI_SUCCESSThe device was reset.
EFI_DEVICE_ERRORThe device is not functioning properly and could not be reset.

Reset the input device and optionally run diagnostics

Parameters
ThisProtocol instance pointer.
ExtendedVerificationDriver may perform diagnostics on reset.
Return values
EFI_SUCCESSThe device was reset.
EFI_DEVICE_ERRORThe device is not functioning properly and could not be reset.

Definition at line 4170 of file ConSplitter.c.

◆ ConSplitterSimplePointerWaitForInput()

VOID EFIAPI ConSplitterSimplePointerWaitForInput ( IN EFI_EVENT  Event,
IN VOID *  Context 
)

This event agregates all the events of the ConIn devices in the spliter. If any events of physical ConIn devices are signaled, signal the ConIn spliter event. This will cause the calling code to call ConSplitterTextInReadKeyStroke ().

Parameters
EventThe Event assoicated with callback.
ContextContext registered when Event was created.

This event aggregates all the events of the ConIn devices in the spliter. If any events of physical ConIn devices are signaled, signal the ConIn spliter event. This will cause the calling code to call ConSplitterTextInReadKeyStroke ().

Parameters
EventThe Event associated with callback.
ContextContext registered when Event was created.

Definition at line 4319 of file ConSplitter.c.

◆ ConSplitterStdErrComponentNameGetControllerName()

EFI_STATUS EFIAPI ConSplitterStdErrComponentNameGetControllerName ( IN EFI_COMPONENT_NAME_PROTOCOL This,
IN EFI_HANDLE  ControllerHandle,
IN EFI_HANDLE ChildHandle  OPTIONAL,
IN CHAR8 *  Language,
OUT CHAR16 **  ControllerName 
)

Retrieves a Unicode string that is the user readable name of the controller that is being managed by a driver.

This function retrieves the user readable name of the controller specified by ControllerHandle and ChildHandle in the form of a Unicode string. If the driver specified by This has a user readable name in the language specified by Language, then a pointer to the controller name is returned in ControllerName, and EFI_SUCCESS is returned. If the driver specified by This is not currently managing the controller specified by ControllerHandle and ChildHandle, then EFI_UNSUPPORTED is returned. If the driver specified by This does not support the language specified by Language, then EFI_UNSUPPORTED is returned.

Parameters
This[in]A pointer to the EFI_COMPONENT_NAME2_PROTOCOL or EFI_COMPONENT_NAME_PROTOCOL instance.
ControllerHandle[in]The handle of a controller that the driver specified by This is managing. This handle specifies the controller whose name is to be returned.
ChildHandle[in]The handle of the child controller to retrieve the name of. This is an optional parameter that may be NULL. It will be NULL for device drivers. It will also be NULL for a bus drivers that wish to retrieve the name of the bus controller. It will not be NULL for a bus driver that wishes to retrieve the name of a child controller.
Language[in]A pointer to a Null-terminated ASCII string array indicating the language. This is the language of the driver name that the caller is requesting, and it must match one of the languages specified in SupportedLanguages. The number of languages supported by a driver is up to the driver writer. Language is specified in RFC 4646 or ISO 639-2 language code format.
ControllerName[out]A pointer to the Unicode string to return. This Unicode string is the name of the controller specified by ControllerHandle and ChildHandle in the language specified by Language from the point of view of the driver specified by This.
Return values
EFI_SUCCESSThe Unicode string for the user readable name in the language specified by Language for the driver specified by This was returned in DriverName.
EFI_INVALID_PARAMETERControllerHandle is NULL.
EFI_INVALID_PARAMETERChildHandle is not NULL and it is not a valid EFI_HANDLE.
EFI_INVALID_PARAMETERLanguage is NULL.
EFI_INVALID_PARAMETERControllerName is NULL.
EFI_UNSUPPORTEDThe driver specified by This is not currently managing the controller specified by ControllerHandle and ChildHandle.
EFI_UNSUPPORTEDThe driver specified by This does not support the language specified by Language.

Definition at line 738 of file ComponentName.c.

◆ ConSplitterStdErrDriverBindingStart()

EFI_STATUS EFIAPI ConSplitterStdErrDriverBindingStart ( IN EFI_DRIVER_BINDING_PROTOCOL This,
IN EFI_HANDLE  ControllerHandle,
IN EFI_DEVICE_PATH_PROTOCOL RemainingDevicePath 
)

Start Standard Error Consplitter on device handle.

Parameters
ThisDriver Binding protocol instance pointer.
ControllerHandleHandle of device to bind driver to.
RemainingDevicePathOptional parameter use to pick a specific child device to start.
Return values
EFI_SUCCESSStandard Error Consplitter is added to ControllerHandle.
otherStandard Error Consplitter does not support this device.

Definition at line 1445 of file ConSplitter.c.

◆ ConSplitterStdErrDriverBindingStop()

EFI_STATUS EFIAPI ConSplitterStdErrDriverBindingStop ( IN EFI_DRIVER_BINDING_PROTOCOL This,
IN EFI_HANDLE  ControllerHandle,
IN UINTN  NumberOfChildren,
IN EFI_HANDLE ChildHandleBuffer 
)

Stop Standard Error ConSplitter on ControllerHandle by closing Standard Error GUID.

Parameters
ThisDriver Binding protocol instance pointer.
ControllerHandleHandle of device to stop driver on
NumberOfChildrenNumber of Handles in ChildHandleBuffer. If number of children is zero stop the entire bus driver.
ChildHandleBufferList of Child Handles to Stop.
Return values
EFI_SUCCESSThis driver is removed ControllerHandle
otherThis driver was not removed from this device

Definition at line 1783 of file ConSplitter.c.

◆ ConSplitterStdErrDriverBindingSupported()

EFI_STATUS EFIAPI ConSplitterStdErrDriverBindingSupported ( IN EFI_DRIVER_BINDING_PROTOCOL This,
IN EFI_HANDLE  ControllerHandle,
IN EFI_DEVICE_PATH_PROTOCOL RemainingDevicePath 
)

Test to see if Standard Error Device could be supported on the Controller.

Parameters
ThisDriver Binding protocol instance pointer.
ControllerHandleHandle of device to test.
RemainingDevicePathOptional parameter use to pick a specific child device to start.
Return values
EFI_SUCCESSThis driver supports this device.
otherThis driver does not support this device.

Definition at line 1044 of file ConSplitter.c.

◆ ConSplitterTextInAddDevice()

EFI_STATUS ConSplitterTextInAddDevice ( IN TEXT_IN_SPLITTER_PRIVATE_DATA Private,
IN EFI_SIMPLE_TEXT_INPUT_PROTOCOL TextIn 
)

Add Text Input Device in Consplitter Text Input list.

Parameters
PrivateText In Splitter pointer.
TextInSimple Text Input protocol pointer.
Return values
EFI_SUCCESSText Input Device added successfully.
EFI_OUT_OF_RESOURCESCould not grow the buffer size.

Definition at line 1872 of file ConSplitter.c.

◆ ConSplitterTextInConstructor()

EFI_STATUS ConSplitterTextInConstructor ( TEXT_IN_SPLITTER_PRIVATE_DATA ConInPrivate)

Construct console input devices' private data.

Parameters
ConInPrivateA pointer to the TEXT_IN_SPLITTER_PRIVATE_DATA structure.
Return values
EFI_OUT_OF_RESOURCESOut of resources.
EFI_SUCCESSText Input Devcie's private data has been constructed.
otherFailed to construct private data.

Construct console input devices' private data.

Parameters
ConInPrivateA pointer to the TEXT_IN_SPLITTER_PRIVATE_DATA structure.
Return values
EFI_OUT_OF_RESOURCESOut of resources.
EFI_SUCCESSText Input Device's private data has been constructed.
otherFailed to construct private data.

Definition at line 603 of file ConSplitter.c.

◆ ConSplitterTextInDeleteDevice()

EFI_STATUS ConSplitterTextInDeleteDevice ( IN TEXT_IN_SPLITTER_PRIVATE_DATA Private,
IN EFI_SIMPLE_TEXT_INPUT_PROTOCOL TextIn 
)

Remove Text Input Device from Consplitter Text Input list.

Parameters
PrivateText In Splitter pointer.
TextInSimple Text protocol pointer.
Return values
EFI_SUCCESSSimple Text Device removed successfully.
EFI_NOT_FOUNDNo Simple Text Device found.

Definition at line 1918 of file ConSplitter.c.

◆ ConSplitterTextInExAddDevice()

EFI_STATUS ConSplitterTextInExAddDevice ( IN TEXT_IN_SPLITTER_PRIVATE_DATA Private,
IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL TextInEx 
)

Add Text Input Ex Device in Consplitter Text Input Ex list.

Parameters
PrivateText In Splitter pointer.
TextInExSimple Text Input Ex Input protocol pointer.
Return values
EFI_SUCCESSText Input Ex Device added successfully.
EFI_OUT_OF_RESOURCESCould not grow the buffer size.

Definition at line 1954 of file ConSplitter.c.

◆ ConSplitterTextInExDeleteDevice()

EFI_STATUS ConSplitterTextInExDeleteDevice ( IN TEXT_IN_SPLITTER_PRIVATE_DATA Private,
IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL TextInEx 
)

Remove Text Ex Device from Consplitter Text Input Ex list.

Parameters
PrivateText In Splitter pointer.
TextInExSimple Text Ex protocol pointer.
Return values
EFI_SUCCESSSimple Text Input Ex Device removed successfully.
EFI_NOT_FOUNDNo Simple Text Input Ex Device found.

Definition at line 2056 of file ConSplitter.c.

◆ ConSplitterTextInPrivateReadKeyStroke()

EFI_STATUS EFIAPI ConSplitterTextInPrivateReadKeyStroke ( IN TEXT_IN_SPLITTER_PRIVATE_DATA Private,
OUT EFI_INPUT_KEY Key 
)

Reads the next keystroke from the input device. The WaitForKey Event can be used to test for existance of a keystroke via WaitForEvent () call.

Parameters
PrivateProtocol instance pointer.
KeyDriver may perform diagnostics on reset.
Return values
EFI_SUCCESSThe keystroke information was returned.
EFI_NOT_READYThere was no keystroke data availiable.
EFI_DEVICE_ERRORThe keydtroke information was not returned due to hardware errors.
EFI_UNSUPPORTEDThe device does not support the ability to read keystroke data.

Reads the next keystroke from the input device. The WaitForKey Event can be used to test for existence of a keystroke via WaitForEvent () call.

Parameters
PrivateProtocol instance pointer.
KeyDriver may perform diagnostics on reset.
Return values
EFI_SUCCESSThe keystroke information was returned.
EFI_NOT_READYThere was no keystroke data availiable.
EFI_DEVICE_ERRORThe keydtroke information was not returned due to hardware errors.
EFI_UNSUPPORTEDThe device does not support the ability to read keystroke data.

Definition at line 3560 of file ConSplitter.c.

◆ ConSplitterTextInReadKeyStroke()

EFI_STATUS EFIAPI ConSplitterTextInReadKeyStroke ( IN EFI_SIMPLE_TEXT_INPUT_PROTOCOL This,
OUT EFI_INPUT_KEY Key 
)

Reads the next keystroke from the input device. The WaitForKey Event can be used to test for existance of a keystroke via WaitForEvent () call.

Parameters
ThisProtocol instance pointer.
KeyDriver may perform diagnostics on reset.
Return values
EFI_SUCCESSThe keystroke information was returned.
EFI_NOT_READYThere was no keystroke data availiable.
EFI_DEVICE_ERRORThe keydtroke information was not returned due to hardware errors.
EFI_UNSUPPORTEDThe device does not support the ability to read keystroke data.

Reads the next keystroke from the input device. The WaitForKey Event can be used to test for existence of a keystroke via WaitForEvent () call.

Parameters
ThisProtocol instance pointer.
KeyDriver may perform diagnostics on reset.
Return values
EFI_SUCCESSThe keystroke information was returned.
EFI_NOT_READYThere was no keystroke data availiable.
EFI_DEVICE_ERRORThe keydtroke information was not returned due to hardware errors.
EFI_UNSUPPORTEDThe device does not support the ability to read keystroke data.

Definition at line 3634 of file ConSplitter.c.

◆ ConSplitterTextInReadKeyStrokeEx()

EFI_STATUS EFIAPI ConSplitterTextInReadKeyStrokeEx ( IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL This,
OUT EFI_KEY_DATA KeyData 
)

Reads the next keystroke from the input device. The WaitForKey Event can be used to test for existance of a keystroke via WaitForEvent () call.

Parameters
ThisProtocol instance pointer.
KeyDataA pointer to a buffer that is filled in with the keystroke state data for the key that was pressed.
Return values
EFI_SUCCESSThe keystroke information was returned.
EFI_NOT_READYThere was no keystroke data availiable.
EFI_DEVICE_ERRORThe keystroke information was not returned due to hardware errors.
EFI_INVALID_PARAMETERKeyData is NULL.
EFI_UNSUPPORTEDThe device does not support the ability to read keystroke data.

Reads the next keystroke from the input device. The WaitForKey Event can be used to test for existence of a keystroke via WaitForEvent () call.

Parameters
ThisProtocol instance pointer.
KeyDataA pointer to a buffer that is filled in with the keystroke state data for the key that was pressed.
Return values
EFI_SUCCESSThe keystroke information was returned.
EFI_NOT_READYThere was no keystroke data availiable.
EFI_DEVICE_ERRORThe keystroke information was not returned due to hardware errors.
EFI_INVALID_PARAMETERKeyData is NULL.
EFI_UNSUPPORTEDThe device does not support the ability to read keystroke data.

Definition at line 3818 of file ConSplitter.c.

◆ ConSplitterTextInRegisterKeyNotify()

EFI_STATUS EFIAPI ConSplitterTextInRegisterKeyNotify ( IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL This,
IN EFI_KEY_DATA KeyData,
IN EFI_KEY_NOTIFY_FUNCTION  KeyNotificationFunction,
OUT VOID **  NotifyHandle 
)

Register a notification function for a particular keystroke for the input device.

Parameters
ThisProtocol instance pointer.
KeyDataA pointer to a buffer that is filled in with the keystroke information for the key that was pressed. If KeyData.Key, KeyData.KeyState.KeyToggleState and KeyData.KeyState.KeyShiftState are 0, then any incomplete keystroke will trigger a notification of the KeyNotificationFunction.
KeyNotificationFunctionPoints to the function to be called when the key sequence is typed specified by KeyData. This notification function should be called at <=TPL_CALLBACK.
NotifyHandlePoints to the unique handle assigned to the registered notification.
Return values
EFI_SUCCESSThe notification function was registered successfully.
EFI_OUT_OF_RESOURCESUnable to allocate resources for necesssary data structures.
EFI_INVALID_PARAMETERKeyData or KeyNotificationFunction or NotifyHandle is NULL.

Register a notification function for a particular keystroke for the input device.

Parameters
ThisProtocol instance pointer.
KeyDataA pointer to a buffer that is filled in with the keystroke information for the key that was pressed. If KeyData.Key, KeyData.KeyState.KeyToggleState and KeyData.KeyState.KeyShiftState are 0, then any incomplete keystroke will trigger a notification of the KeyNotificationFunction.
KeyNotificationFunctionPoints to the function to be called when the key sequence is typed specified by KeyData. This notification function should be called at <=TPL_CALLBACK.
NotifyHandlePoints to the unique handle assigned to the registered notification.
Return values
EFI_SUCCESSThe notification function was registered successfully.
EFI_OUT_OF_RESOURCESUnable to allocate resources for necessary data structures.
EFI_INVALID_PARAMETERKeyData or KeyNotificationFunction or NotifyHandle is NULL.

Definition at line 4017 of file ConSplitter.c.

◆ ConSplitterTextInReset()

EFI_STATUS EFIAPI ConSplitterTextInReset ( IN EFI_SIMPLE_TEXT_INPUT_PROTOCOL This,
IN BOOLEAN  ExtendedVerification 
)

Reset the input device and optionaly run diagnostics

Parameters
ThisProtocol instance pointer.
ExtendedVerificationDriver may perform diagnostics on reset.
Return values
EFI_SUCCESSThe device was reset.
EFI_DEVICE_ERRORThe device is not functioning properly and could not be reset.

Reset the input device and optionally run diagnostics

Parameters
ThisProtocol instance pointer.
ExtendedVerificationDriver may perform diagnostics on reset.
Return values
EFI_SUCCESSThe device was reset.
EFI_DEVICE_ERRORThe device is not functioning properly and could not be reset.

Definition at line 3472 of file ConSplitter.c.

◆ ConSplitterTextInResetEx()

EFI_STATUS EFIAPI ConSplitterTextInResetEx ( IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL This,
IN BOOLEAN  ExtendedVerification 
)

Reset the input device and optionaly run diagnostics

Parameters
ThisProtocol instance pointer.
ExtendedVerificationDriver may perform diagnostics on reset.
Return values
EFI_SUCCESSThe device was reset.
EFI_DEVICE_ERRORThe device is not functioning properly and could not be reset.

Reset the input device and optionally run diagnostics

Parameters
ThisProtocol instance pointer.
ExtendedVerificationDriver may perform diagnostics on reset.
Return values
EFI_SUCCESSThe device was reset.
EFI_DEVICE_ERRORThe device is not functioning properly and could not be reset.

Definition at line 3760 of file ConSplitter.c.

◆ ConSplitterTextInSetState()

EFI_STATUS EFIAPI ConSplitterTextInSetState ( IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL This,
IN EFI_KEY_TOGGLE_STATE KeyToggleState 
)

Set certain state for the input device.

Parameters
ThisProtocol instance pointer.
KeyToggleStateA pointer to the EFI_KEY_TOGGLE_STATE to set the state for the input device.
Return values
EFI_SUCCESSThe device state was set successfully.
EFI_DEVICE_ERRORThe device is not functioning correctly and could not have the setting adjusted.
EFI_UNSUPPORTEDThe device does not have the ability to set its state.
EFI_INVALID_PARAMETERKeyToggleState is NULL.

Definition at line 3945 of file ConSplitter.c.

◆ ConSplitterTextInUnregisterKeyNotify()

EFI_STATUS EFIAPI ConSplitterTextInUnregisterKeyNotify ( IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL This,
IN VOID *  NotificationHandle 
)

Remove a registered notification function from a particular keystroke.

Parameters
ThisProtocol instance pointer.
NotificationHandleThe handle of the notification function being unregistered.
Return values
EFI_SUCCESSThe notification function was unregistered successfully.
EFI_INVALID_PARAMETERThe NotificationHandle is invalid.
EFI_NOT_FOUNDCan not find the matching entry in database.

Remove a registered notification function from a particular keystroke.

Parameters
ThisProtocol instance pointer.
NotificationHandleThe handle of the notification function being unregistered.
Return values
EFI_SUCCESSThe notification function was unregistered successfully.
EFI_INVALID_PARAMETERThe NotificationHandle is invalid.

Definition at line 4117 of file ConSplitter.c.

◆ ConSplitterTextInWaitForKey()

VOID EFIAPI ConSplitterTextInWaitForKey ( IN EFI_EVENT  Event,
IN VOID *  Context 
)

This event aggregates all the events of the ConIn devices in the spliter.

If any events of physical ConIn devices are signaled, signal the ConIn spliter event. This will cause the calling code to call ConSplitterTextInReadKeyStroke ().

Parameters
EventThe Event assoicated with callback.
ContextContext registered when Event was created.

This event aggregates all the events of the ConIn devices in the spliter.

If any events of physical ConIn devices are signaled, signal the ConIn spliter event. This will cause the calling code to call ConSplitterTextInReadKeyStroke ().

Parameters
EventThe Event associated with callback.
ContextContext registered when Event was created.

Definition at line 3670 of file ConSplitter.c.

◆ ConSplitterTextOutAddDevice()

EFI_STATUS ConSplitterTextOutAddDevice ( IN TEXT_OUT_SPLITTER_PRIVATE_DATA Private,
IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL TextOut,
IN EFI_GRAPHICS_OUTPUT_PROTOCOL GraphicsOutput,
IN EFI_UGA_DRAW_PROTOCOL UgaDraw 
)

Add Text Output Device in Consplitter Text Output list.

Parameters
PrivateText Out Splitter pointer.
TextOutSimple Text Output protocol pointer.
GraphicsOutputGraphics Output protocol pointer.
UgaDrawUGA Draw protocol pointer.
Return values
EFI_SUCCESSText Output Device added successfully.
EFI_OUT_OF_RESOURCESCould not grow the buffer size.

Definition at line 3140 of file ConSplitter.c.

◆ ConSplitterTextOutClearScreen()

EFI_STATUS EFIAPI ConSplitterTextOutClearScreen ( IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL This)

Clears the output device(s) display to the currently selected background color.

Parameters
ThisProtocol instance pointer.
Return values
EFI_SUCCESSThe operation completed successfully.
EFI_DEVICE_ERRORThe device had an error and could not complete the request.
EFI_UNSUPPORTEDThe output device is not in a valid text mode.

Definition at line 4978 of file ConSplitter.c.

◆ ConSplitterTextOutConstructor()

EFI_STATUS ConSplitterTextOutConstructor ( TEXT_OUT_SPLITTER_PRIVATE_DATA ConOutPrivate)

Construct console output devices' private data.

Parameters
ConOutPrivateA pointer to the TEXT_OUT_SPLITTER_PRIVATE_DATA structure.
Return values
EFI_OUT_OF_RESOURCESOut of resources.
EFI_SUCCESSText Input Devcie's private data has been constructed.

Definition at line 750 of file ConSplitter.c.

◆ ConSplitterTextOutDeleteDevice()

EFI_STATUS ConSplitterTextOutDeleteDevice ( IN TEXT_OUT_SPLITTER_PRIVATE_DATA Private,
IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL TextOut 
)

Remove Text Out Device in Consplitter Text Out list.

Parameters
PrivateText Out Splitter pointer.
TextOutSimple Text Output Pointer protocol pointer.
Return values
EFI_SUCCESSText Out Device removed successfully.
EFI_NOT_FOUNDNo Text Out Device found.

Definition at line 3337 of file ConSplitter.c.

◆ ConSplitterTextOutEnableCursor()

EFI_STATUS EFIAPI ConSplitterTextOutEnableCursor ( IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL This,
IN BOOLEAN  Visible 
)

Makes the cursor visible or invisible

Parameters
ThisProtocol instance pointer.
VisibleIf TRUE, the cursor is set to be visible. If FALSE, the cursor is set to be invisible.
Return values
EFI_SUCCESSThe operation completed successfully.
EFI_DEVICE_ERRORThe device had an error and could not complete the request, or the device does not support changing the cursor mode.
EFI_UNSUPPORTEDThe output device is not in a valid text mode.

Definition at line 5110 of file ConSplitter.c.

◆ ConSplitterTextOutOutputString()

EFI_STATUS EFIAPI ConSplitterTextOutOutputString ( IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL This,
IN CHAR16 *  WString 
)

Write a Unicode string to the output device.

Parameters
ThisProtocol instance pointer.
WStringThe NULL-terminated Unicode string to be displayed on the output device(s). All output devices must also support the Unicode drawing defined in this file.
Return values
EFI_SUCCESSThe string was output to the device.
EFI_DEVICE_ERRORThe device reported an error while attempting to output the text.
EFI_UNSUPPORTEDThe output device's mode is not currently in a defined text mode.
EFI_WARN_UNKNOWN_GLYPHThis warning code indicates that some of the characters in the Unicode string could not be rendered and were skipped.

Definition at line 4635 of file ConSplitter.c.

◆ ConSplitterTextOutQueryMode()

EFI_STATUS EFIAPI ConSplitterTextOutQueryMode ( IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL This,
IN UINTN  ModeNumber,
OUT UINTN Columns,
OUT UINTN Rows 
)

Returns information for an available text mode that the output device(s) supports.

Parameters
ThisProtocol instance pointer.
ModeNumberThe mode number to return information on.
ColumnsReturns the columns of the text output device for the requested ModeNumber.
RowsReturns the rows of the text output device for the requested ModeNumber.
Return values
EFI_SUCCESSThe requested mode information was returned.
EFI_DEVICE_ERRORThe device had an error and could not complete the request.
EFI_UNSUPPORTEDThe mode number was not valid.

Definition at line 4788 of file ConSplitter.c.

◆ ConSplitterTextOutReset()

EFI_STATUS EFIAPI ConSplitterTextOutReset ( IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL This,
IN BOOLEAN  ExtendedVerification 
)

Reset the text output device hardware and optionaly run diagnostics

Parameters
ThisProtocol instance pointer.
ExtendedVerificationDriver may perform more exhaustive verfication operation of the device during reset.
Return values
EFI_SUCCESSThe text output device was reset.
EFI_DEVICE_ERRORThe text output device is not functioning correctly and could not be reset.

Reset the text output device hardware and optionally run diagnostics

Parameters
ThisProtocol instance pointer.
ExtendedVerificationDriver may perform more exhaustive verification operation of the device during reset.
Return values
EFI_SUCCESSThe text output device was reset.
EFI_DEVICE_ERRORThe text output device is not functioning correctly and could not be reset.

Definition at line 4579 of file ConSplitter.c.

◆ ConSplitterTextOutSetAttribute()

EFI_STATUS EFIAPI ConSplitterTextOutSetAttribute ( IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL This,
IN UINTN  Attribute 
)

Sets the background and foreground colors for the OutputString () and ClearScreen () functions.

Parameters
ThisProtocol instance pointer.
AttributeThe attribute to set. Bits 0..3 are the foreground color, and bits 4..6 are the background color. All other bits are undefined and must be zero. The valid Attributes are defined in this file.
Return values
EFI_SUCCESSThe attribute was set.
EFI_DEVICE_ERRORThe device had an error and could not complete the request.
EFI_UNSUPPORTEDThe attribute requested is not defined.

Definition at line 4927 of file ConSplitter.c.

◆ ConSplitterTextOutSetCursorPosition()

EFI_STATUS EFIAPI ConSplitterTextOutSetCursorPosition ( IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL This,
IN UINTN  Column,
IN UINTN  Row 
)

Sets the current coordinates of the cursor position

Parameters
ThisProtocol instance pointer.
ColumnThe column position to set the cursor to. Must be greater than or equal to zero and less than the number of columns by QueryMode ().
RowThe row position to set the cursor to. Must be greater than or equal to zero and less than the number of rows by QueryMode ().
Return values
EFI_SUCCESSThe operation completed successfully.
EFI_DEVICE_ERRORThe device had an error and could not complete the request.
EFI_UNSUPPORTEDThe output device is not in a valid text mode, or the cursor position is invalid for the current mode.

Definition at line 5032 of file ConSplitter.c.

◆ ConSplitterTextOutSetMode()

EFI_STATUS EFIAPI ConSplitterTextOutSetMode ( IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL This,
IN UINTN  ModeNumber 
)

Sets the output device(s) to a specified mode.

Parameters
ThisProtocol instance pointer.
ModeNumberThe mode number to set.
Return values
EFI_SUCCESSThe requested text mode was set.
EFI_DEVICE_ERRORThe device had an error and could not complete the request.
EFI_UNSUPPORTEDThe mode number was not valid.

Definition at line 4847 of file ConSplitter.c.

◆ ConSplitterTextOutTestString()

EFI_STATUS EFIAPI ConSplitterTextOutTestString ( IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL This,
IN CHAR16 *  WString 
)

Verifies that all characters in a Unicode string can be output to the target device.

Parameters
ThisProtocol instance pointer.
WStringThe NULL-terminated Unicode string to be examined for the output device(s).
Return values
EFI_SUCCESSThe device(s) are capable of rendering the output string.
EFI_UNSUPPORTEDSome of the characters in the Unicode string cannot be rendered by one or more of the output devices mapped by the EFI handle.

Definition at line 4736 of file ConSplitter.c.

◆ ConSplitterUgaDrawBlt()

EFI_STATUS EFIAPI ConSplitterUgaDrawBlt ( IN EFI_UGA_DRAW_PROTOCOL This,
IN EFI_UGA_PIXEL *BltBuffer  OPTIONAL,
IN EFI_UGA_BLT_OPERATION  BltOperation,
IN UINTN  SourceX,
IN UINTN  SourceY,
IN UINTN  DestinationX,
IN UINTN  DestinationY,
IN UINTN  Width,
IN UINTN  Height,
IN UINTN Delta  OPTIONAL 
)

Blt a rectangle of pixels on the graphics screen.

The following table defines actions for BltOperations.

EfiUgaVideoFill: Write data from the BltBuffer pixel (SourceX, SourceY) directly to every pixel of the video display rectangle (DestinationX, DestinationY) (DestinationX + Width, DestinationY + Height). Only one pixel will be used from the BltBuffer. Delta is NOT used. EfiUgaVideoToBltBuffer: Read data from the video display rectangle (SourceX, SourceY) (SourceX + Width, SourceY + Height) and place it in the BltBuffer rectangle (DestinationX, DestinationY ) (DestinationX + Width, DestinationY + Height). If DestinationX or DestinationY is not zero then Delta must be set to the length in bytes of a row in the BltBuffer. EfiUgaBltBufferToVideo: Write data from the BltBuffer rectangle (SourceX, SourceY) (SourceX + Width, SourceY + Height) directly to the video display rectangle (DestinationX, DestinationY) (DestinationX + Width, DestinationY + Height). If SourceX or SourceY is not zero then Delta must be set to the length in bytes of a row in the BltBuffer. EfiUgaVideoToVideo: Copy from the video display rectangle (SourceX, SourceY) (SourceX + Width, SourceY + Height) . to the video display rectangle (DestinationX, DestinationY) (DestinationX + Width, DestinationY + Height). The BltBuffer and Delta are not used in this mode.

Parameters
ThisProtocol instance pointer.
BltBufferBuffer containing data to blit into video buffer. This buffer has a size of Width*Height*sizeof(EFI_UGA_PIXEL)
BltOperationOperation to perform on BlitBuffer and video memory
SourceXX coordinate of source for the BltBuffer.
SourceYY coordinate of source for the BltBuffer.
DestinationXX coordinate of destination for the BltBuffer.
DestinationYY coordinate of destination for the BltBuffer.
WidthWidth of rectangle in BltBuffer in pixels.
HeightHight of rectangle in BltBuffer in pixels.
DeltaOPTIONAL
Return values
EFI_SUCCESSThe Blt operation completed.
EFI_INVALID_PARAMETERBltOperation is not valid.
EFI_DEVICE_ERRORA hardware error occurred writting to the video buffer.

Definition at line 521 of file ConSplitterGraphics.c.

◆ ConSplitterUgaDrawGetMode()

EFI_STATUS EFIAPI ConSplitterUgaDrawGetMode ( IN EFI_UGA_DRAW_PROTOCOL This,
OUT UINT32 *  HorizontalResolution,
OUT UINT32 *  VerticalResolution,
OUT UINT32 *  ColorDepth,
OUT UINT32 *  RefreshRate 
)

Return the current video mode information.

Parameters
ThisThe EFI_UGA_DRAW_PROTOCOL instance.
HorizontalResolutionThe size of video screen in pixels in the X dimension.
VerticalResolutionThe size of video screen in pixels in the Y dimension.
ColorDepthNumber of bits per pixel, currently defined to be 32.
RefreshRateThe refresh rate of the monitor in Hertz.
Return values
EFI_SUCCESSMode information returned.
EFI_NOT_STARTEDVideo display is not initialized. Call SetMode ()
EFI_INVALID_PARAMETEROne of the input args was NULL.

Definition at line 346 of file ConSplitterGraphics.c.

◆ ConSplitterUgaDrawSetMode()

EFI_STATUS EFIAPI ConSplitterUgaDrawSetMode ( IN EFI_UGA_DRAW_PROTOCOL This,
IN UINT32  HorizontalResolution,
IN UINT32  VerticalResolution,
IN UINT32  ColorDepth,
IN UINT32  RefreshRate 
)

Set the current video mode information.

Parameters
ThisThe EFI_UGA_DRAW_PROTOCOL instance.
HorizontalResolutionThe size of video screen in pixels in the X dimension.
VerticalResolutionThe size of video screen in pixels in the Y dimension.
ColorDepthNumber of bits per pixel, currently defined to be 32.
RefreshRateThe refresh rate of the monitor in Hertz.
Return values
EFI_SUCCESSMode information returned.
EFI_NOT_STARTEDVideo display is not initialized. Call SetMode ()
EFI_OUT_OF_RESOURCESOut of resources.

Definition at line 393 of file ConSplitterGraphics.c.

◆ TextOutSetMode()

VOID TextOutSetMode ( IN TEXT_OUT_SPLITTER_PRIVATE_DATA Private,
IN UINTN  ModeNumber 
)

Sets the output device(s) to a specified mode.

Parameters
PrivateText Out Splitter pointer.
ModeNumberThe mode number to set.

Definition at line 606 of file ConSplitterGraphics.c.

Variable Documentation

◆ gConSplitterAbsolutePointerComponentName

EFI_COMPONENT_NAME_PROTOCOL gConSplitterAbsolutePointerComponentName
extern

Definition at line 50 of file ComponentName.c.

◆ gConSplitterAbsolutePointerComponentName2

EFI_COMPONENT_NAME2_PROTOCOL gConSplitterAbsolutePointerComponentName2
extern

Definition at line 59 of file ComponentName.c.

◆ gConSplitterAbsolutePointerDriverBinding

EFI_DRIVER_BINDING_PROTOCOL gConSplitterAbsolutePointerDriverBinding
extern

Definition at line 292 of file ConSplitter.c.

◆ gConSplitterConInComponentName

EFI_COMPONENT_NAME_PROTOCOL gConSplitterConInComponentName
extern

Definition at line 14 of file ComponentName.c.

◆ gConSplitterConInComponentName2

EFI_COMPONENT_NAME2_PROTOCOL gConSplitterConInComponentName2
extern

Definition at line 23 of file ComponentName.c.

◆ gConSplitterConInDriverBinding

EFI_DRIVER_BINDING_PROTOCOL gConSplitterConInDriverBinding
extern

Definition at line 244 of file ConSplitter.c.

◆ gConSplitterConOutComponentName

EFI_COMPONENT_NAME_PROTOCOL gConSplitterConOutComponentName
extern

Definition at line 68 of file ComponentName.c.

◆ gConSplitterConOutComponentName2

EFI_COMPONENT_NAME2_PROTOCOL gConSplitterConOutComponentName2
extern

Definition at line 77 of file ComponentName.c.

◆ gConSplitterConOutDriverBinding

EFI_DRIVER_BINDING_PROTOCOL gConSplitterConOutDriverBinding
extern

Definition at line 256 of file ConSplitter.c.

◆ gConSplitterSimplePointerComponentName

EFI_COMPONENT_NAME_PROTOCOL gConSplitterSimplePointerComponentName
extern

Definition at line 32 of file ComponentName.c.

◆ gConSplitterSimplePointerComponentName2

EFI_COMPONENT_NAME2_PROTOCOL gConSplitterSimplePointerComponentName2
extern

Definition at line 41 of file ComponentName.c.

◆ gConSplitterSimplePointerDriverBinding

EFI_DRIVER_BINDING_PROTOCOL gConSplitterSimplePointerDriverBinding
extern

Definition at line 280 of file ConSplitter.c.

◆ gConSplitterStdErrComponentName

EFI_COMPONENT_NAME_PROTOCOL gConSplitterStdErrComponentName
extern

Definition at line 86 of file ComponentName.c.

◆ gConSplitterStdErrComponentName2

EFI_COMPONENT_NAME2_PROTOCOL gConSplitterStdErrComponentName2
extern

Definition at line 95 of file ComponentName.c.

◆ gConSplitterStdErrDriverBinding

EFI_DRIVER_BINDING_PROTOCOL gConSplitterStdErrDriverBinding
extern

Definition at line 268 of file ConSplitter.c.