TianoCore EDK2 master
|
#include <Uefi.h>
#include <PiDxe.h>
#include <Protocol/DevicePath.h>
#include <Protocol/ComponentName.h>
#include <Protocol/DriverBinding.h>
#include <Protocol/SimplePointer.h>
#include <Protocol/AbsolutePointer.h>
#include <Protocol/SimpleTextOut.h>
#include <Protocol/SimpleTextIn.h>
#include <Protocol/SimpleTextInEx.h>
#include <Protocol/GraphicsOutput.h>
#include <Protocol/UgaDraw.h>
#include <Guid/ConsoleInDevice.h>
#include <Guid/StandardErrorDevice.h>
#include <Guid/ConsoleOutDevice.h>
#include <Guid/ConnectConInEvent.h>
#include <Library/PcdLib.h>
#include <Library/DebugLib.h>
#include <Library/UefiDriverEntryPoint.h>
#include <Library/UefiLib.h>
#include <Library/BaseLib.h>
#include <Library/BaseMemoryLib.h>
#include <Library/MemoryAllocationLib.h>
#include <Library/UefiBootServicesTableLib.h>
#include <Library/UefiRuntimeServicesTableLib.h>
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 |
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.
#define CONSOLE_CONTROL_SPLITTER_PRIVATE_DATA_FROM_THIS | ( | a | ) |
Definition at line 240 of file ConSplitter.h.
#define CONSOLE_SPLITTER_ALLOC_UNIT 32 |
Definition at line 70 of file ConSplitter.h.
#define GRAPHICS_OUTPUT_SPLITTER_PRIVATE_DATA_FROM_THIS | ( | a | ) |
Definition at line 226 of file ConSplitter.h.
#define KEY_STATE_VALID_EXPOSED (EFI_TOGGLE_STATE_VALID | EFI_KEY_STATE_EXPOSED) |
Definition at line 82 of file ConSplitter.h.
#define TEXT_IN_EX_SPLITTER_NOTIFY_FROM_THIS | ( | a | ) |
Definition at line 97 of file ConSplitter.h.
#define TEXT_IN_EX_SPLITTER_NOTIFY_SIGNATURE SIGNATURE_32 ('T', 'i', 'S', 'n') |
Definition at line 84 of file ConSplitter.h.
#define TEXT_IN_EX_SPLITTER_PRIVATE_DATA_FROM_THIS | ( | a | ) |
Definition at line 167 of file ConSplitter.h.
#define TEXT_IN_SPLITTER_PRIVATE_DATA_FROM_ABSOLUTE_POINTER_THIS | ( | a | ) |
Definition at line 174 of file ConSplitter.h.
#define TEXT_IN_SPLITTER_PRIVATE_DATA_FROM_SIMPLE_POINTER_THIS | ( | a | ) |
Definition at line 161 of file ConSplitter.h.
#define TEXT_IN_SPLITTER_PRIVATE_DATA_FROM_THIS | ( | a | ) |
Definition at line 154 of file ConSplitter.h.
#define TEXT_IN_SPLITTER_PRIVATE_DATA_SIGNATURE SIGNATURE_32 ('T', 'i', 'S', 'p') |
Definition at line 104 of file ConSplitter.h.
#define TEXT_OUT_SPLITTER_PRIVATE_DATA_FROM_THIS | ( | a | ) |
Definition at line 219 of file ConSplitter.h.
#define TEXT_OUT_SPLITTER_PRIVATE_DATA_SIGNATURE SIGNATURE_32 ('T', 'o', 'S', 'p') |
Definition at line 181 of file ConSplitter.h.
#define UGA_DRAW_SPLITTER_PRIVATE_DATA_FROM_THIS | ( | a | ) |
Definition at line 233 of file ConSplitter.h.
#define UNICODE_NARROW_CHAR 0xFFF0 |
Definition at line 64 of file ConSplitter.h.
#define UNICODE_WIDE_CHAR 0xFFF1 |
Definition at line 65 of file ConSplitter.h.
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.
Private | Text In Splitter pointer. |
AbsolutePointer | Absolute Pointer protocol pointer. |
EFI_SUCCESS | Absolute Pointer Device added successfully. |
EFI_OUT_OF_RESOURCES | Could not grow the buffer size. |
Definition at line 2169 of file ConSplitter.c.
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.
This | A pointer to the EFI_COMPONENT_NAME_PROTOCOL instance. |
ControllerHandle | 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 | 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 | A 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. |
ControllerName | 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. |
EFI_SUCCESS | The 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_PARAMETER | ControllerHandle is NULL. |
EFI_INVALID_PARAMETER | ChildHandle is not NULL and it is not a valid EFI_HANDLE. |
EFI_INVALID_PARAMETER | Language is NULL. |
EFI_INVALID_PARAMETER | ControllerName is NULL. |
EFI_UNSUPPORTED | The driver specified by This is not currently managing the controller specified by ControllerHandle and ChildHandle. |
EFI_UNSUPPORTED | The driver specified by This does not support the language specified by Language. |
Definition at line 538 of file ComponentName.c.
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.
Private | Text In Splitter pointer. |
AbsolutePointer | Absolute Pointer protocol pointer. |
EFI_SUCCESS | Absolute Pointer Device removed successfully. |
EFI_NOT_FOUND | No Absolute Pointer Device found. |
Definition at line 2210 of file ConSplitter.c.
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.
This | Driver Binding protocol instance pointer. |
ControllerHandle | Handle of device to bind driver to. |
RemainingDevicePath | Optional parameter use to pick a specific child device to start. |
EFI_SUCCESS | Absolute Pointer Consplitter is added to ControllerHandle. |
other | Absolute Pointer Consplitter does not support this device. |
Definition at line 1283 of file ConSplitter.c.
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.
This | Driver Binding protocol instance pointer. |
ControllerHandle | Handle of device to stop driver on |
NumberOfChildren | Number of Handles in ChildHandleBuffer. If number of children is zero stop the entire bus driver. |
ChildHandleBuffer | List of Child Handles to Stop. |
EFI_SUCCESS | This driver is removed ControllerHandle |
other | This driver was not removed from this device |
Definition at line 1683 of file ConSplitter.c.
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.
This | Driver Binding protocol instance pointer. |
ControllerHandle | Handle of device to test. |
RemainingDevicePath | Optional parameter use to pick a specific child device to start. |
EFI_SUCCESS | This driver supports this device. |
other | This driver does not support this device. |
Definition at line 990 of file ConSplitter.c.
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.
This | Protocol instance pointer. |
State | A pointer to the state information on the pointer device. |
EFI_SUCCESS | The state of the pointer device was returned in State.. |
EFI_NOT_READY | The state of the pointer device has not changed since the last call to GetState(). |
EFI_DEVICE_ERROR | A device error occurred while attempting to retrieve the pointer device's current state. |
Definition at line 4414 of file ConSplitter.c.
EFI_STATUS EFIAPI ConSplitterAbsolutePointerReset | ( | IN EFI_ABSOLUTE_POINTER_PROTOCOL * | This, |
IN BOOLEAN | ExtendedVerification | ||
) |
Resets the pointer device hardware.
This | Protocol instance pointer. |
ExtendedVerification | Driver may perform diagnostics on reset. |
EFI_SUCCESS | The device was reset. |
EFI_DEVICE_ERROR | The device is not functioning correctly and could not be reset. |
Definition at line 4363 of file ConSplitter.c.
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 ().
Event | The Event assoicated with callback. |
Context | Context 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 ().
Event | The Event associated with callback. |
Context | Context registered when Event was created. |
Definition at line 4533 of file ConSplitter.c.
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.
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. |
EFI_SUCCESS | The Unicode string for the Driver specified by This and the language specified by Language was returned in DriverName. |
EFI_INVALID_PARAMETER | Language is NULL. |
EFI_INVALID_PARAMETER | DriverName is NULL. |
EFI_UNSUPPORTED | The driver specified by This does not support the language specified by Language. |
Definition at line 208 of file ComponentName.c.
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.
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. |
EFI_SUCCESS | The 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_PARAMETER | ControllerHandle is NULL. |
EFI_INVALID_PARAMETER | ChildHandle is not NULL and it is not a valid EFI_HANDLE. |
EFI_INVALID_PARAMETER | Language is NULL. |
EFI_INVALID_PARAMETER | ControllerName is NULL. |
EFI_UNSUPPORTED | The driver specified by This is not currently managing the controller specified by ControllerHandle and ChildHandle. |
EFI_UNSUPPORTED | The driver specified by This does not support the language specified by Language. |
Definition at line 362 of file ComponentName.c.
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.
This | Driver Binding protocol instance pointer. |
ControllerHandle | Handle of device to bind driver to. |
RemainingDevicePath | Optional parameter use to pick a specific child device to start. |
EFI_SUCCESS | Console In Consplitter is added to ControllerHandle. |
other | Console In Consplitter does not support this device. |
Definition at line 1171 of file ConSplitter.c.
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.
This | Driver Binding protocol instance pointer. |
ControllerHandle | Handle of device to stop driver on |
NumberOfChildren | Number of Handles in ChildHandleBuffer. If number of children is zero stop the entire bus driver. |
ChildHandleBuffer | List of Child Handles to Stop. |
EFI_SUCCESS | This driver is removed ControllerHandle |
other | This driver was not removed from this device |
Stop Console In ConSplitter on ControllerHandle by closing Console In Device GUID.
This | Driver Binding protocol instance pointer. |
ControllerHandle | Handle of device to stop driver on |
NumberOfChildren | Number of Handles in ChildHandleBuffer. If number of children is zero stop the entire bus driver. |
ChildHandleBuffer | List of Child Handles to Stop. |
EFI_SUCCESS | This driver is removed ControllerHandle |
other | This driver was not removed from this device |
Definition at line 1561 of file ConSplitter.c.
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.
This | Driver Binding protocol instance pointer. |
ControllerHandle | Handle of device to test. |
RemainingDevicePath | Optional parameter use to pick a specific child device to start. |
EFI_SUCCESS | This driver supports this device. |
other | This driver does not support this device. |
Definition at line 936 of file ConSplitter.c.
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.
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. |
EFI_SUCCESS | The 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_PARAMETER | ControllerHandle is NULL. |
EFI_INVALID_PARAMETER | ChildHandle is not NULL and it is not a valid EFI_HANDLE. |
EFI_INVALID_PARAMETER | Language is NULL. |
EFI_INVALID_PARAMETER | ControllerName is NULL. |
EFI_UNSUPPORTED | The driver specified by This is not currently managing the controller specified by ControllerHandle and ChildHandle. |
EFI_UNSUPPORTED | The driver specified by This does not support the language specified by Language. |
Definition at line 638 of file ComponentName.c.
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.
This | Driver Binding protocol instance pointer. |
ControllerHandle | Handle of device to bind driver to. |
RemainingDevicePath | Optional parameter use to pick a specific child device to start. |
EFI_SUCCESS | Console Out Consplitter is added to ControllerHandle. |
other | Console Out Consplitter does not support this device. |
Definition at line 1329 of file ConSplitter.c.
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.
This | Driver Binding protocol instance pointer. |
ControllerHandle | Handle of device to stop driver on |
NumberOfChildren | Number of Handles in ChildHandleBuffer. If number of children is zero stop the entire bus driver. |
ChildHandleBuffer | List of Child Handles to Stop. |
EFI_SUCCESS | This driver is removed ControllerHandle |
other | This driver was not removed from this device |
Stop Console Out ConSplitter on device handle by closing Console Out Devcie GUID.
This | Driver Binding protocol instance pointer. |
ControllerHandle | Handle of device to stop driver on |
NumberOfChildren | Number of Handles in ChildHandleBuffer. If number of children is zero stop the entire bus driver. |
ChildHandleBuffer | List of Child Handles to Stop. |
EFI_SUCCESS | This driver is removed ControllerHandle |
other | This driver was not removed from this device |
Definition at line 1733 of file ConSplitter.c.
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.
This | Driver Binding protocol instance pointer. |
ControllerHandle | Handle of device to test. |
RemainingDevicePath | Optional parameter use to pick a specific child device to start. |
EFI_SUCCESS | This driver supports this device. |
other | This driver does not support this device. |
Definition at line 1017 of file ConSplitter.c.
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.
[in] | ImageHandle | The firmware allocated handle for the EFI image. |
[in] | SystemTable | A pointer to the EFI System Table. |
EFI_SUCCESS | The entry point is executed successfully. |
other | Some 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.
[in] | ImageHandle | The firmware allocated handle for the EFI image. |
[in] | SystemTable | A pointer to the EFI System Table. |
EFI_SUCCESS | The entry point is executed successfully. |
other | Some error occurs when executing this entry point. |
Definition at line 436 of file ConSplitter.c.
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.
This | Protocol instance pointer. |
BltBuffer | Buffer containing data to blit into video buffer. This buffer has a size of Width*Height*sizeof(EFI_GRAPHICS_OUTPUT_BLT_PIXEL) |
BltOperation | Operation to perform on BlitBuffer and video memory |
SourceX | X coordinate of source for the BltBuffer. |
SourceY | Y coordinate of source for the BltBuffer. |
DestinationX | X coordinate of destination for the BltBuffer. |
DestinationY | Y coordinate of destination for the BltBuffer. |
Width | Width of rectangle in BltBuffer in pixels. |
Height | Hight of rectangle in BltBuffer in pixels. |
Delta | OPTIONAL. |
EFI_SUCCESS | The Blt operation completed. |
EFI_INVALID_PARAMETER | BltOperation is not valid. |
EFI_DEVICE_ERROR | A hardware error occurred writting to the video buffer. |
Definition at line 246 of file ConSplitterGraphics.c.
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.
This | The EFI_GRAPHICS_OUTPUT_PROTOCOL instance. |
ModeNumber | The mode number to return information on. |
SizeOfInfo | A pointer to the size, in bytes, of the Info buffer. |
Info | A pointer to callee allocated buffer that returns information about ModeNumber. |
EFI_SUCCESS | Mode information returned. |
EFI_BUFFER_TOO_SMALL | The Info buffer was too small. |
EFI_DEVICE_ERROR | A hardware error occurred trying to retrieve the video mode. |
EFI_INVALID_PARAMETER | One of the input args was NULL. |
EFI_OUT_OF_RESOURCES | No resource available. |
Definition at line 32 of file ConSplitterGraphics.c.
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.
This | The EFI_GRAPHICS_OUTPUT_PROTOCOL instance. |
ModeNumber | Abstraction that defines the current video mode. |
EFI_SUCCESS | The graphics mode specified by ModeNumber was selected. |
EFI_DEVICE_ERROR | The device had an error and could not complete the request. |
EFI_UNSUPPORTED | ModeNumber is not supported by this device. |
EFI_OUT_OF_RESOURCES | No resource available. |
Definition at line 105 of file ConSplitterGraphics.c.
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.
ElementSize | Size of element in array. |
Count | Current number of elements in array. |
Buffer | Bigger version of passed in Buffer with all the data. |
EFI_SUCCESS | Buffer size has grown. |
EFI_OUT_OF_RESOURCES | Could not grow the buffer size. |
Definition at line 1834 of file ConSplitter.c.
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.
Private | Text In Splitter pointer. |
SimplePointer | Simple Pointer protocol pointer. |
EFI_SUCCESS | Simple Pointer Device added successfully. |
EFI_OUT_OF_RESOURCES | Could not grow the buffer size. |
Definition at line 2092 of file ConSplitter.c.
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.
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. |
EFI_SUCCESS | The 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_PARAMETER | ControllerHandle is NULL. |
EFI_INVALID_PARAMETER | ChildHandle is not NULL and it is not a valid EFI_HANDLE. |
EFI_INVALID_PARAMETER | Language is NULL. |
EFI_INVALID_PARAMETER | ControllerName is NULL. |
EFI_UNSUPPORTED | The driver specified by This is not currently managing the controller specified by ControllerHandle and ChildHandle. |
EFI_UNSUPPORTED | The driver specified by This does not support the language specified by Language. |
Definition at line 462 of file ComponentName.c.
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.
Private | Text In Splitter pointer. |
SimplePointer | Simple Pointer protocol pointer. |
EFI_SUCCESS | Simple Pointer Device removed successfully. |
EFI_NOT_FOUND | No Simple Pointer Device found. |
Definition at line 2133 of file ConSplitter.c.
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.
This | Driver Binding protocol instance pointer. |
ControllerHandle | Handle of device to bind driver to. |
RemainingDevicePath | Optional parameter use to pick a specific child device to start. |
EFI_SUCCESS | Simple Pointer Consplitter is added to ControllerHandle. |
other | Simple Pointer Consplitter does not support this device. |
Definition at line 1238 of file ConSplitter.c.
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.
This | Driver Binding protocol instance pointer. |
ControllerHandle | Handle of device to stop driver on |
NumberOfChildren | Number of Handles in ChildHandleBuffer. If number of children is zero stop the entire bus driver. |
ChildHandleBuffer | List of Child Handles to Stop. |
EFI_SUCCESS | This driver is removed ControllerHandle |
other | This driver was not removed from this device |
Definition at line 1632 of file ConSplitter.c.
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.
This | Driver Binding protocol instance pointer. |
ControllerHandle | Handle of device to test. |
RemainingDevicePath | Optional parameter use to pick a specific child device to start. |
EFI_SUCCESS | This driver supports this device. |
other | This driver does not support this device. |
Definition at line 963 of file ConSplitter.c.
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.
This | A pointer to protocol instance. |
State | A pointer to state information on the pointer device |
EFI_SUCCESS | The keystroke information was returned in State. |
EFI_NOT_READY | There was no keystroke data availiable. |
EFI_DEVICE_ERROR | The keydtroke information was not returned due to hardware errors. |
Definition at line 4293 of file ConSplitter.c.
EFI_STATUS EFIAPI ConSplitterSimplePointerReset | ( | IN EFI_SIMPLE_POINTER_PROTOCOL * | This, |
IN BOOLEAN | ExtendedVerification | ||
) |
Reset the input device and optionaly run diagnostics
This | Protocol instance pointer. |
ExtendedVerification | Driver may perform diagnostics on reset. |
EFI_SUCCESS | The device was reset. |
EFI_DEVICE_ERROR | The device is not functioning properly and could not be reset. |
Reset the input device and optionally run diagnostics
This | Protocol instance pointer. |
ExtendedVerification | Driver may perform diagnostics on reset. |
EFI_SUCCESS | The device was reset. |
EFI_DEVICE_ERROR | The device is not functioning properly and could not be reset. |
Definition at line 4170 of file ConSplitter.c.
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 ().
Event | The Event assoicated with callback. |
Context | Context 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 ().
Event | The Event associated with callback. |
Context | Context registered when Event was created. |
Definition at line 4319 of file ConSplitter.c.
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.
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. |
EFI_SUCCESS | The 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_PARAMETER | ControllerHandle is NULL. |
EFI_INVALID_PARAMETER | ChildHandle is not NULL and it is not a valid EFI_HANDLE. |
EFI_INVALID_PARAMETER | Language is NULL. |
EFI_INVALID_PARAMETER | ControllerName is NULL. |
EFI_UNSUPPORTED | The driver specified by This is not currently managing the controller specified by ControllerHandle and ChildHandle. |
EFI_UNSUPPORTED | The driver specified by This does not support the language specified by Language. |
Definition at line 738 of file ComponentName.c.
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.
This | Driver Binding protocol instance pointer. |
ControllerHandle | Handle of device to bind driver to. |
RemainingDevicePath | Optional parameter use to pick a specific child device to start. |
EFI_SUCCESS | Standard Error Consplitter is added to ControllerHandle. |
other | Standard Error Consplitter does not support this device. |
Definition at line 1445 of file ConSplitter.c.
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.
This | Driver Binding protocol instance pointer. |
ControllerHandle | Handle of device to stop driver on |
NumberOfChildren | Number of Handles in ChildHandleBuffer. If number of children is zero stop the entire bus driver. |
ChildHandleBuffer | List of Child Handles to Stop. |
EFI_SUCCESS | This driver is removed ControllerHandle |
other | This driver was not removed from this device |
Definition at line 1783 of file ConSplitter.c.
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.
This | Driver Binding protocol instance pointer. |
ControllerHandle | Handle of device to test. |
RemainingDevicePath | Optional parameter use to pick a specific child device to start. |
EFI_SUCCESS | This driver supports this device. |
other | This driver does not support this device. |
Definition at line 1044 of file ConSplitter.c.
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.
Private | Text In Splitter pointer. |
TextIn | Simple Text Input protocol pointer. |
EFI_SUCCESS | Text Input Device added successfully. |
EFI_OUT_OF_RESOURCES | Could not grow the buffer size. |
Definition at line 1872 of file ConSplitter.c.
EFI_STATUS ConSplitterTextInConstructor | ( | TEXT_IN_SPLITTER_PRIVATE_DATA * | ConInPrivate | ) |
Construct console input devices' private data.
ConInPrivate | A pointer to the TEXT_IN_SPLITTER_PRIVATE_DATA structure. |
EFI_OUT_OF_RESOURCES | Out of resources. |
EFI_SUCCESS | Text Input Devcie's private data has been constructed. |
other | Failed to construct private data. |
Construct console input devices' private data.
ConInPrivate | A pointer to the TEXT_IN_SPLITTER_PRIVATE_DATA structure. |
EFI_OUT_OF_RESOURCES | Out of resources. |
EFI_SUCCESS | Text Input Device's private data has been constructed. |
other | Failed to construct private data. |
Definition at line 603 of file ConSplitter.c.
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.
Private | Text In Splitter pointer. |
TextIn | Simple Text protocol pointer. |
EFI_SUCCESS | Simple Text Device removed successfully. |
EFI_NOT_FOUND | No Simple Text Device found. |
Definition at line 1918 of file ConSplitter.c.
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.
Private | Text In Splitter pointer. |
TextInEx | Simple Text Input Ex Input protocol pointer. |
EFI_SUCCESS | Text Input Ex Device added successfully. |
EFI_OUT_OF_RESOURCES | Could not grow the buffer size. |
Definition at line 1954 of file ConSplitter.c.
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.
Private | Text In Splitter pointer. |
TextInEx | Simple Text Ex protocol pointer. |
EFI_SUCCESS | Simple Text Input Ex Device removed successfully. |
EFI_NOT_FOUND | No Simple Text Input Ex Device found. |
Definition at line 2056 of file ConSplitter.c.
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.
Private | Protocol instance pointer. |
Key | Driver may perform diagnostics on reset. |
EFI_SUCCESS | The keystroke information was returned. |
EFI_NOT_READY | There was no keystroke data availiable. |
EFI_DEVICE_ERROR | The keydtroke information was not returned due to hardware errors. |
EFI_UNSUPPORTED | The 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.
Private | Protocol instance pointer. |
Key | Driver may perform diagnostics on reset. |
EFI_SUCCESS | The keystroke information was returned. |
EFI_NOT_READY | There was no keystroke data availiable. |
EFI_DEVICE_ERROR | The keydtroke information was not returned due to hardware errors. |
EFI_UNSUPPORTED | The device does not support the ability to read keystroke data. |
Definition at line 3560 of file ConSplitter.c.
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.
This | Protocol instance pointer. |
Key | Driver may perform diagnostics on reset. |
EFI_SUCCESS | The keystroke information was returned. |
EFI_NOT_READY | There was no keystroke data availiable. |
EFI_DEVICE_ERROR | The keydtroke information was not returned due to hardware errors. |
EFI_UNSUPPORTED | The 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.
This | Protocol instance pointer. |
Key | Driver may perform diagnostics on reset. |
EFI_SUCCESS | The keystroke information was returned. |
EFI_NOT_READY | There was no keystroke data availiable. |
EFI_DEVICE_ERROR | The keydtroke information was not returned due to hardware errors. |
EFI_UNSUPPORTED | The device does not support the ability to read keystroke data. |
Definition at line 3634 of file ConSplitter.c.
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.
This | Protocol instance pointer. |
KeyData | A pointer to a buffer that is filled in with the keystroke state data for the key that was pressed. |
EFI_SUCCESS | The keystroke information was returned. |
EFI_NOT_READY | There was no keystroke data availiable. |
EFI_DEVICE_ERROR | The keystroke information was not returned due to hardware errors. |
EFI_INVALID_PARAMETER | KeyData is NULL. |
EFI_UNSUPPORTED | The 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.
This | Protocol instance pointer. |
KeyData | A pointer to a buffer that is filled in with the keystroke state data for the key that was pressed. |
EFI_SUCCESS | The keystroke information was returned. |
EFI_NOT_READY | There was no keystroke data availiable. |
EFI_DEVICE_ERROR | The keystroke information was not returned due to hardware errors. |
EFI_INVALID_PARAMETER | KeyData is NULL. |
EFI_UNSUPPORTED | The device does not support the ability to read keystroke data. |
Definition at line 3818 of file ConSplitter.c.
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.
This | Protocol instance pointer. |
KeyData | A 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. |
KeyNotificationFunction | Points to the function to be called when the key sequence is typed specified by KeyData. This notification function should be called at <=TPL_CALLBACK. |
NotifyHandle | Points to the unique handle assigned to the registered notification. |
EFI_SUCCESS | The notification function was registered successfully. |
EFI_OUT_OF_RESOURCES | Unable to allocate resources for necesssary data structures. |
EFI_INVALID_PARAMETER | KeyData or KeyNotificationFunction or NotifyHandle is NULL. |
Register a notification function for a particular keystroke for the input device.
This | Protocol instance pointer. |
KeyData | A 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. |
KeyNotificationFunction | Points to the function to be called when the key sequence is typed specified by KeyData. This notification function should be called at <=TPL_CALLBACK. |
NotifyHandle | Points to the unique handle assigned to the registered notification. |
EFI_SUCCESS | The notification function was registered successfully. |
EFI_OUT_OF_RESOURCES | Unable to allocate resources for necessary data structures. |
EFI_INVALID_PARAMETER | KeyData or KeyNotificationFunction or NotifyHandle is NULL. |
Definition at line 4017 of file ConSplitter.c.
EFI_STATUS EFIAPI ConSplitterTextInReset | ( | IN EFI_SIMPLE_TEXT_INPUT_PROTOCOL * | This, |
IN BOOLEAN | ExtendedVerification | ||
) |
Reset the input device and optionaly run diagnostics
This | Protocol instance pointer. |
ExtendedVerification | Driver may perform diagnostics on reset. |
EFI_SUCCESS | The device was reset. |
EFI_DEVICE_ERROR | The device is not functioning properly and could not be reset. |
Reset the input device and optionally run diagnostics
This | Protocol instance pointer. |
ExtendedVerification | Driver may perform diagnostics on reset. |
EFI_SUCCESS | The device was reset. |
EFI_DEVICE_ERROR | The device is not functioning properly and could not be reset. |
Definition at line 3472 of file ConSplitter.c.
EFI_STATUS EFIAPI ConSplitterTextInResetEx | ( | IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL * | This, |
IN BOOLEAN | ExtendedVerification | ||
) |
Reset the input device and optionaly run diagnostics
This | Protocol instance pointer. |
ExtendedVerification | Driver may perform diagnostics on reset. |
EFI_SUCCESS | The device was reset. |
EFI_DEVICE_ERROR | The device is not functioning properly and could not be reset. |
Reset the input device and optionally run diagnostics
This | Protocol instance pointer. |
ExtendedVerification | Driver may perform diagnostics on reset. |
EFI_SUCCESS | The device was reset. |
EFI_DEVICE_ERROR | The device is not functioning properly and could not be reset. |
Definition at line 3760 of file ConSplitter.c.
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.
This | Protocol instance pointer. |
KeyToggleState | A pointer to the EFI_KEY_TOGGLE_STATE to set the state for the input device. |
EFI_SUCCESS | The device state was set successfully. |
EFI_DEVICE_ERROR | The device is not functioning correctly and could not have the setting adjusted. |
EFI_UNSUPPORTED | The device does not have the ability to set its state. |
EFI_INVALID_PARAMETER | KeyToggleState is NULL. |
Definition at line 3945 of file ConSplitter.c.
EFI_STATUS EFIAPI ConSplitterTextInUnregisterKeyNotify | ( | IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL * | This, |
IN VOID * | NotificationHandle | ||
) |
Remove a registered notification function from a particular keystroke.
This | Protocol instance pointer. |
NotificationHandle | The handle of the notification function being unregistered. |
EFI_SUCCESS | The notification function was unregistered successfully. |
EFI_INVALID_PARAMETER | The NotificationHandle is invalid. |
EFI_NOT_FOUND | Can not find the matching entry in database. |
Remove a registered notification function from a particular keystroke.
This | Protocol instance pointer. |
NotificationHandle | The handle of the notification function being unregistered. |
EFI_SUCCESS | The notification function was unregistered successfully. |
EFI_INVALID_PARAMETER | The NotificationHandle is invalid. |
Definition at line 4117 of file ConSplitter.c.
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 ().
Event | The Event assoicated with callback. |
Context | Context 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 ().
Event | The Event associated with callback. |
Context | Context registered when Event was created. |
Definition at line 3670 of file ConSplitter.c.
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.
Private | Text Out Splitter pointer. |
TextOut | Simple Text Output protocol pointer. |
GraphicsOutput | Graphics Output protocol pointer. |
UgaDraw | UGA Draw protocol pointer. |
EFI_SUCCESS | Text Output Device added successfully. |
EFI_OUT_OF_RESOURCES | Could not grow the buffer size. |
Definition at line 3140 of file ConSplitter.c.
EFI_STATUS EFIAPI ConSplitterTextOutClearScreen | ( | IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL * | This | ) |
Clears the output device(s) display to the currently selected background color.
This | Protocol instance pointer. |
EFI_SUCCESS | The operation completed successfully. |
EFI_DEVICE_ERROR | The device had an error and could not complete the request. |
EFI_UNSUPPORTED | The output device is not in a valid text mode. |
Definition at line 4978 of file ConSplitter.c.
EFI_STATUS ConSplitterTextOutConstructor | ( | TEXT_OUT_SPLITTER_PRIVATE_DATA * | ConOutPrivate | ) |
Construct console output devices' private data.
ConOutPrivate | A pointer to the TEXT_OUT_SPLITTER_PRIVATE_DATA structure. |
EFI_OUT_OF_RESOURCES | Out of resources. |
EFI_SUCCESS | Text Input Devcie's private data has been constructed. |
Definition at line 750 of file ConSplitter.c.
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.
Private | Text Out Splitter pointer. |
TextOut | Simple Text Output Pointer protocol pointer. |
EFI_SUCCESS | Text Out Device removed successfully. |
EFI_NOT_FOUND | No Text Out Device found. |
Definition at line 3337 of file ConSplitter.c.
EFI_STATUS EFIAPI ConSplitterTextOutEnableCursor | ( | IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL * | This, |
IN BOOLEAN | Visible | ||
) |
Makes the cursor visible or invisible
This | Protocol instance pointer. |
Visible | If TRUE, the cursor is set to be visible. If FALSE, the cursor is set to be invisible. |
EFI_SUCCESS | The operation completed successfully. |
EFI_DEVICE_ERROR | The device had an error and could not complete the request, or the device does not support changing the cursor mode. |
EFI_UNSUPPORTED | The output device is not in a valid text mode. |
Definition at line 5110 of file ConSplitter.c.
EFI_STATUS EFIAPI ConSplitterTextOutOutputString | ( | IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL * | This, |
IN CHAR16 * | WString | ||
) |
Write a Unicode string to the output device.
This | Protocol instance pointer. |
WString | The 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. |
EFI_SUCCESS | The string was output to the device. |
EFI_DEVICE_ERROR | The device reported an error while attempting to output the text. |
EFI_UNSUPPORTED | The output device's mode is not currently in a defined text mode. |
EFI_WARN_UNKNOWN_GLYPH | This 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.
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.
This | Protocol instance pointer. |
ModeNumber | The mode number to return information on. |
Columns | Returns the columns of the text output device for the requested ModeNumber. |
Rows | Returns the rows of the text output device for the requested ModeNumber. |
EFI_SUCCESS | The requested mode information was returned. |
EFI_DEVICE_ERROR | The device had an error and could not complete the request. |
EFI_UNSUPPORTED | The mode number was not valid. |
Definition at line 4788 of file ConSplitter.c.
EFI_STATUS EFIAPI ConSplitterTextOutReset | ( | IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL * | This, |
IN BOOLEAN | ExtendedVerification | ||
) |
Reset the text output device hardware and optionaly run diagnostics
This | Protocol instance pointer. |
ExtendedVerification | Driver may perform more exhaustive verfication operation of the device during reset. |
EFI_SUCCESS | The text output device was reset. |
EFI_DEVICE_ERROR | The text output device is not functioning correctly and could not be reset. |
Reset the text output device hardware and optionally run diagnostics
This | Protocol instance pointer. |
ExtendedVerification | Driver may perform more exhaustive verification operation of the device during reset. |
EFI_SUCCESS | The text output device was reset. |
EFI_DEVICE_ERROR | The text output device is not functioning correctly and could not be reset. |
Definition at line 4579 of file ConSplitter.c.
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.
This | Protocol instance pointer. |
Attribute | The 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. |
EFI_SUCCESS | The attribute was set. |
EFI_DEVICE_ERROR | The device had an error and could not complete the request. |
EFI_UNSUPPORTED | The attribute requested is not defined. |
Definition at line 4927 of file ConSplitter.c.
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
This | Protocol instance pointer. |
Column | The column position to set the cursor to. Must be greater than or equal to zero and less than the number of columns by QueryMode (). |
Row | The row position to set the cursor to. Must be greater than or equal to zero and less than the number of rows by QueryMode (). |
EFI_SUCCESS | The operation completed successfully. |
EFI_DEVICE_ERROR | The device had an error and could not complete the request. |
EFI_UNSUPPORTED | The 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.
EFI_STATUS EFIAPI ConSplitterTextOutSetMode | ( | IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL * | This, |
IN UINTN | ModeNumber | ||
) |
Sets the output device(s) to a specified mode.
This | Protocol instance pointer. |
ModeNumber | The mode number to set. |
EFI_SUCCESS | The requested text mode was set. |
EFI_DEVICE_ERROR | The device had an error and could not complete the request. |
EFI_UNSUPPORTED | The mode number was not valid. |
Definition at line 4847 of file ConSplitter.c.
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.
This | Protocol instance pointer. |
WString | The NULL-terminated Unicode string to be examined for the output device(s). |
EFI_SUCCESS | The device(s) are capable of rendering the output string. |
EFI_UNSUPPORTED | Some 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.
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.
This | Protocol instance pointer. |
BltBuffer | Buffer containing data to blit into video buffer. This buffer has a size of Width*Height*sizeof(EFI_UGA_PIXEL) |
BltOperation | Operation to perform on BlitBuffer and video memory |
SourceX | X coordinate of source for the BltBuffer. |
SourceY | Y coordinate of source for the BltBuffer. |
DestinationX | X coordinate of destination for the BltBuffer. |
DestinationY | Y coordinate of destination for the BltBuffer. |
Width | Width of rectangle in BltBuffer in pixels. |
Height | Hight of rectangle in BltBuffer in pixels. |
Delta | OPTIONAL |
EFI_SUCCESS | The Blt operation completed. |
EFI_INVALID_PARAMETER | BltOperation is not valid. |
EFI_DEVICE_ERROR | A hardware error occurred writting to the video buffer. |
Definition at line 521 of file ConSplitterGraphics.c.
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.
This | The EFI_UGA_DRAW_PROTOCOL instance. |
HorizontalResolution | The size of video screen in pixels in the X dimension. |
VerticalResolution | The size of video screen in pixels in the Y dimension. |
ColorDepth | Number of bits per pixel, currently defined to be 32. |
RefreshRate | The refresh rate of the monitor in Hertz. |
EFI_SUCCESS | Mode information returned. |
EFI_NOT_STARTED | Video display is not initialized. Call SetMode () |
EFI_INVALID_PARAMETER | One of the input args was NULL. |
Definition at line 346 of file ConSplitterGraphics.c.
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.
This | The EFI_UGA_DRAW_PROTOCOL instance. |
HorizontalResolution | The size of video screen in pixels in the X dimension. |
VerticalResolution | The size of video screen in pixels in the Y dimension. |
ColorDepth | Number of bits per pixel, currently defined to be 32. |
RefreshRate | The refresh rate of the monitor in Hertz. |
EFI_SUCCESS | Mode information returned. |
EFI_NOT_STARTED | Video display is not initialized. Call SetMode () |
EFI_OUT_OF_RESOURCES | Out of resources. |
Definition at line 393 of file ConSplitterGraphics.c.
VOID TextOutSetMode | ( | IN TEXT_OUT_SPLITTER_PRIVATE_DATA * | Private, |
IN UINTN | ModeNumber | ||
) |
Sets the output device(s) to a specified mode.
Private | Text Out Splitter pointer. |
ModeNumber | The mode number to set. |
Definition at line 606 of file ConSplitterGraphics.c.
|
extern |
Definition at line 50 of file ComponentName.c.
|
extern |
Definition at line 59 of file ComponentName.c.
|
extern |
Definition at line 292 of file ConSplitter.c.
|
extern |
Definition at line 14 of file ComponentName.c.
|
extern |
Definition at line 23 of file ComponentName.c.
|
extern |
Definition at line 244 of file ConSplitter.c.
|
extern |
Definition at line 68 of file ComponentName.c.
|
extern |
Definition at line 77 of file ComponentName.c.
|
extern |
Definition at line 256 of file ConSplitter.c.
|
extern |
Definition at line 32 of file ComponentName.c.
|
extern |
Definition at line 41 of file ComponentName.c.
|
extern |
Definition at line 280 of file ConSplitter.c.
|
extern |
Definition at line 86 of file ComponentName.c.
|
extern |
Definition at line 95 of file ComponentName.c.
|
extern |
Definition at line 268 of file ConSplitter.c.