]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitter.h
Update the copyright notice format
[mirror_edk2.git] / MdeModulePkg / Universal / Console / ConSplitterDxe / ConSplitter.h
index db1212b83560b60fa41057f1f662a29b872d7723..1ab8264d8e5421fc1033a19ae3246682ad25089e 100644 (file)
@@ -1,8 +1,8 @@
 /** @file\r
   Private data structures for the Console Splitter driver\r
 \r
-Copyright (c) 2006 - 2008 Intel Corporation. <BR>\r
-All rights reserved. This program and the accompanying materials\r
+Copyright (c) 2006 - 2009, Intel Corporation. All rights reserved.<BR>\r
+This program and the accompanying materials\r
 are licensed and made available under the terms and conditions of the BSD License\r
 which accompanies this distribution.  The full text of the license may be found at\r
 http://opensource.org/licenses/bsd-license.php\r
@@ -20,7 +20,6 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #include <Protocol/DevicePath.h>\r
 #include <Protocol/ComponentName.h>\r
 #include <Protocol/DriverBinding.h>\r
-#include <Protocol/ConsoleControl.h>\r
 #include <Protocol/SimplePointer.h>\r
 #include <Protocol/AbsolutePointer.h>\r
 #include <Protocol/SimpleTextOut.h>\r
@@ -29,10 +28,6 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #include <Protocol/GraphicsOutput.h>\r
 #include <Protocol/UgaDraw.h>\r
 \r
-#include <Guid/PrimaryStandardErrorDevice.h>\r
-#include <Guid/PrimaryConsoleOutDevice.h>\r
-#include <Guid/PrimaryConsoleInDevice.h>\r
-#include <Guid/GenericPlatformVariable.h>\r
 #include <Guid/ConsoleInDevice.h>\r
 #include <Guid/StandardErrorDevice.h>\r
 #include <Guid/ConsoleOutDevice.h>\r
@@ -67,7 +62,6 @@ extern EFI_DRIVER_BINDING_PROTOCOL  gConSplitterStdErrDriverBinding;
 extern EFI_COMPONENT_NAME_PROTOCOL  gConSplitterStdErrComponentName;\r
 extern EFI_COMPONENT_NAME2_PROTOCOL gConSplitterStdErrComponentName2;\r
 \r
-extern EFI_GUID                     gSimpleTextInExNotifyGuid;\r
 \r
 //\r
 // These definitions were in the old Hii protocol, but are not in the new UEFI\r
@@ -82,9 +76,7 @@ extern EFI_GUID                     gSimpleTextInExNotifyGuid;
 //\r
 #define CONSOLE_SPLITTER_CONSOLES_ALLOC_UNIT  32\r
 #define CONSOLE_SPLITTER_MODES_ALLOC_UNIT     32\r
-#define MAX_STD_IN_PASSWORD                   80\r
 \r
-#define VARCONOUTMODE L"ConOutMode"\r
 \r
 typedef struct {\r
   UINTN   Column;\r
@@ -92,8 +84,8 @@ typedef struct {
 } CONSOLE_OUT_MODE;\r
 \r
 typedef struct {\r
-  UINTN Columns;\r
-  UINTN Rows;\r
+  UINTN   Columns;\r
+  UINTN   Rows;\r
 } TEXT_OUT_SPLITTER_QUERY_DATA;\r
 \r
 \r
@@ -152,12 +144,6 @@ typedef struct {
   UINTN                              AbsolutePointerListCount;\r
   BOOLEAN                            AbsoluteInputEventSignalState;\r
 \r
-  BOOLEAN                            PasswordEnabled;\r
-  CHAR16                             Password[MAX_STD_IN_PASSWORD];\r
-  UINTN                              PwdIndex;\r
-  CHAR16                             PwdAttempt[MAX_STD_IN_PASSWORD];\r
-  EFI_EVENT                          LockEvent;\r
-\r
   BOOLEAN                            KeyEventSignalState;\r
   BOOLEAN                            InputEventSignalState;\r
 } TEXT_IN_SPLITTER_PRIVATE_DATA;\r
@@ -196,7 +182,6 @@ typedef struct {
   EFI_GRAPHICS_OUTPUT_PROTOCOL     *GraphicsOutput;\r
   EFI_UGA_DRAW_PROTOCOL            *UgaDraw;\r
   EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL  *TextOut;\r
-  BOOLEAN                          TextOutEnabled;\r
 } TEXT_OUT_AND_GOP_DATA;\r
 \r
 //\r
@@ -207,36 +192,25 @@ typedef struct {
   EFI_HANDLE                            VirtualHandle;\r
   EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL       TextOut;\r
   EFI_SIMPLE_TEXT_OUTPUT_MODE           TextOutMode;\r
-                                        \r
+\r
   EFI_UGA_DRAW_PROTOCOL                 UgaDraw;\r
   UINT32                                UgaHorizontalResolution;\r
   UINT32                                UgaVerticalResolution;\r
   UINT32                                UgaColorDepth;\r
   UINT32                                UgaRefreshRate;\r
-  EFI_UGA_PIXEL                         *UgaBlt;\r
-                                        \r
+\r
   EFI_GRAPHICS_OUTPUT_PROTOCOL          GraphicsOutput;\r
-  EFI_GRAPHICS_OUTPUT_BLT_PIXEL         *GraphicsOutputBlt;\r
   EFI_GRAPHICS_OUTPUT_MODE_INFORMATION  *GraphicsOutputModeBuffer;\r
   UINTN                                 CurrentNumberOfGraphicsOutput;\r
   UINTN                                 CurrentNumberOfUgaDraw;\r
   BOOLEAN                               HardwareNeedsStarting;\r
-                                        \r
-  EFI_CONSOLE_CONTROL_PROTOCOL          ConsoleControl;\r
-                                        \r
+\r
   UINTN                                 CurrentNumberOfConsoles;\r
   TEXT_OUT_AND_GOP_DATA                 *TextOutList;\r
   UINTN                                 TextOutListCount;\r
   TEXT_OUT_SPLITTER_QUERY_DATA          *TextOutQueryData;\r
   UINTN                                 TextOutQueryDataCount;\r
   INT32                                 *TextOutModeMap;\r
-                                        \r
-  EFI_CONSOLE_CONTROL_SCREEN_MODE       ConsoleOutputMode;\r
-                                        \r
-  UINTN                                 DevNullColumns;\r
-  UINTN                                 DevNullRows;\r
-  CHAR16                                *DevNullScreen;\r
-  INT32                                 *DevNullAttributes;\r
 \r
 } TEXT_OUT_SPLITTER_PRIVATE_DATA;\r
 \r
@@ -277,7 +251,7 @@ typedef struct {
 \r
   Installs driver module protocols and. Creates virtual device handles for ConIn,\r
   ConOut, and StdErr. Installs Simple Text In protocol, Simple Text In Ex protocol,\r
-  Simple Pointer protocol, Absolute Pointer protocol on those virtual handlers. \r
+  Simple Pointer protocol, Absolute Pointer protocol on those virtual handlers.\r
   Installs Graphics Output protocol and/or UGA Draw protocol if needed.\r
 \r
   @param[in] ImageHandle    The firmware allocated handle for the EFI image.\r
@@ -325,12 +299,9 @@ ConSplitterTextOutConstructor (
   TEXT_OUT_SPLITTER_PRIVATE_DATA      *ConOutPrivate\r
   );\r
 \r
-//\r
-// Driver Binding Functions\r
-//\r
 \r
 /**\r
-  Test to see if Console In Device could be supported on the Controller. \r
+  Test to see if Console In Device could be supported on the Controller.\r
 \r
   @param  This                Driver Binding protocol instance pointer.\r
   @param  ControllerHandle    Handle of device to test.\r
@@ -350,7 +321,7 @@ ConSplitterConInDriverBindingSupported (
   );\r
 \r
 /**\r
-  Test to see if Simple Pointer protocol could be supported on the Controller. \r
+  Test to see if Simple Pointer protocol could be supported on the Controller.\r
 \r
   @param  This                Driver Binding protocol instance pointer.\r
   @param  ControllerHandle    Handle of device to test.\r
@@ -370,7 +341,7 @@ ConSplitterSimplePointerDriverBindingSupported (
   );\r
 \r
 /**\r
-  Test to see if Console Out Device could be supported on the Controller. \r
+  Test to see if Console Out Device could be supported on the Controller.\r
 \r
   @param  This                Driver Binding protocol instance pointer.\r
   @param  ControllerHandle    Handle of device to test.\r
@@ -390,7 +361,7 @@ ConSplitterConOutDriverBindingSupported (
   );\r
 \r
 /**\r
-  Test to see if Standard Error Device could be supported on the Controller. \r
+  Test to see if Standard Error Device could be supported on the Controller.\r
 \r
   @param  This                Driver Binding protocol instance pointer.\r
   @param  ControllerHandle    Handle of device to test.\r
@@ -410,8 +381,8 @@ ConSplitterStdErrDriverBindingSupported (
   );\r
 \r
 /**\r
-  Start Console In Consplitter on device handle. \r
-  \r
+  Start Console In Consplitter on device handle.\r
+\r
   @param  This                 Driver Binding protocol instance pointer.\r
   @param  ControllerHandle     Handle of device to bind driver to.\r
   @param  RemainingDevicePath  Optional parameter use to pick a specific child\r
@@ -430,8 +401,8 @@ ConSplitterConInDriverBindingStart (
   );\r
 \r
 /**\r
-  Start Simple Pointer Consplitter on device handle. \r
-  \r
+  Start Simple Pointer Consplitter on device handle.\r
+\r
   @param  This                 Driver Binding protocol instance pointer.\r
   @param  ControllerHandle     Handle of device to bind driver to.\r
   @param  RemainingDevicePath  Optional parameter use to pick a specific child\r
@@ -450,8 +421,8 @@ ConSplitterSimplePointerDriverBindingStart (
   );\r
 \r
 /**\r
-  Start Console Out Consplitter on device handle. \r
-  \r
+  Start Console Out Consplitter on device handle.\r
+\r
   @param  This                 Driver Binding protocol instance pointer.\r
   @param  ControllerHandle     Handle of device to bind driver to.\r
   @param  RemainingDevicePath  Optional parameter use to pick a specific child\r
@@ -470,8 +441,8 @@ ConSplitterConOutDriverBindingStart (
   );\r
 \r
 /**\r
-  Start Standard Error Consplitter on device handle. \r
-  \r
+  Start Standard Error Consplitter on device handle.\r
+\r
   @param  This                 Driver Binding protocol instance pointer.\r
   @param  ControllerHandle     Handle of device to bind driver to.\r
   @param  RemainingDevicePath  Optional parameter use to pick a specific child\r
@@ -580,7 +551,7 @@ ConSplitterStdErrDriverBindingStop (
 \r
 \r
 /**\r
-  Test to see if Absolute Pointer protocol could be supported on the Controller. \r
+  Test to see if Absolute Pointer protocol could be supported on the Controller.\r
 \r
   @param  This                Driver Binding protocol instance pointer.\r
   @param  ControllerHandle    Handle of device to test.\r
@@ -600,8 +571,8 @@ ConSplitterAbsolutePointerDriverBindingSupported (
   );\r
 \r
 /**\r
-  Start Absolute Pointer Consplitter on device handle. \r
-  \r
+  Start Absolute Pointer Consplitter on device handle.\r
+\r
   @param  This                 Driver Binding protocol instance pointer.\r
   @param  ControllerHandle     Handle of device to bind driver to.\r
   @param  RemainingDevicePath  Optional parameter use to pick a specific child\r
@@ -722,7 +693,7 @@ ConSplitterAbsolutePointerGetState (
 \r
 /**\r
   This event agregates all the events of the pointer devices in the splitter.\r
-  If the ConIn is password locked then return.\r
+\r
   If any events of physical pointer devices are signaled, signal the pointer\r
   splitter event. This will cause the calling code to call\r
   ConSplitterAbsolutePointerGetState ().\r
@@ -758,7 +729,7 @@ ConSplitterAbsolutePointerWaitForInput (
                                 languages specified in SupportedLanguages. The\r
                                 number of languages supported by a driver is up\r
                                 to the driver writer. Language is specified\r
-                                in RFC 3066 or ISO 639-2 language code format.\r
+                                in RFC 4646 or ISO 639-2 language code format.\r
 \r
   @param  DriverName[out]       A pointer to the Unicode string to return.\r
                                 This Unicode string is the name of the\r
@@ -823,7 +794,7 @@ ConSplitterComponentNameGetDriverName (
                                 languages specified in SupportedLanguages. The\r
                                 number of languages supported by a driver is up\r
                                 to the driver writer. Language is specified in\r
-                                RFC 3066 or ISO 639-2 language code format.\r
+                                RFC 4646 or ISO 639-2 language code format.\r
 \r
   @param  ControllerName[out]   A pointer to the Unicode string to return.\r
                                 This Unicode string is the name of the\r
@@ -902,7 +873,7 @@ ConSplitterConInComponentNameGetControllerName (
                                 languages specified in SupportedLanguages. The\r
                                 number of languages supported by a driver is up\r
                                 to the driver writer. Language is specified in\r
-                                RFC 3066 or ISO 639-2 language code format.\r
+                                RFC 4646 or ISO 639-2 language code format.\r
 \r
   @param  ControllerName[out]   A pointer to the Unicode string to return.\r
                                 This Unicode string is the name of the\r
@@ -960,7 +931,7 @@ ConSplitterSimplePointerComponentNameGetControllerName (
                                  retrieve the name of the bus controller.  It will\r
                                  not be NULL for a bus driver that wishes to\r
                                  retrieve the name of a child controller.\r
-  @param  Language               A pointer to RFC3066 language identifier. This is\r
+  @param  Language               A pointer to RFC4646 language identifier. This is\r
                                  the language of the controller name that that the\r
                                  caller is requesting, and it must match one of the\r
                                  languages specified in SupportedLanguages.  The\r
@@ -1034,7 +1005,7 @@ ConSplitterAbsolutePointerComponentNameGetControllerName (
                                 languages specified in SupportedLanguages. The\r
                                 number of languages supported by a driver is up\r
                                 to the driver writer. Language is specified in\r
-                                RFC 3066 or ISO 639-2 language code format.\r
+                                RFC 4646 or ISO 639-2 language code format.\r
 \r
   @param  ControllerName[out]   A pointer to the Unicode string to return.\r
                                 This Unicode string is the name of the\r
@@ -1113,7 +1084,7 @@ ConSplitterConOutComponentNameGetControllerName (
                                 languages specified in SupportedLanguages. The\r
                                 number of languages supported by a driver is up\r
                                 to the driver writer. Language is specified in\r
-                                RFC 3066 or ISO 639-2 language code format.\r
+                                RFC 4646 or ISO 639-2 language code format.\r
 \r
   @param  ControllerName[out]   A pointer to the Unicode string to return.\r
                                 This Unicode string is the name of the\r
@@ -1292,7 +1263,6 @@ ConSplitterTextInReset (
 /**\r
   Reads the next keystroke from the input device. The WaitForKey Event can\r
   be used to test for existance of a keystroke via WaitForEvent () call.\r
-  If the ConIn is password locked make it look like no keystroke is availible\r
 \r
   @param  This                     Protocol instance pointer.\r
   @param  Key                      Driver may perform diagnostics on reset.\r
@@ -1346,7 +1316,6 @@ ConSplitterTextInExDeleteDevice (
 // Simple Text Input Ex protocol function prototypes\r
 //\r
 \r
-\r
 /**\r
   Reset the input device and optionaly run diagnostics\r
 \r
@@ -1429,7 +1398,7 @@ ConSplitterTextInSetState (
                                    successfully.\r
   @retval EFI_OUT_OF_RESOURCES     Unable to allocate resources for necesssary data\r
                                    structures.\r
-  @retval EFI_INVALID_PARAMETER    KeyData or NotifyHandle is NULL.\r
+  @retval EFI_INVALID_PARAMETER    KeyData or KeyNotificationFunction or NotifyHandle is NULL.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -1463,8 +1432,8 @@ ConSplitterTextInUnregisterKeyNotify (
   );\r
 \r
 /**\r
-  This event agregates all the events of the ConIn devices in the spliter.\r
-  If the ConIn is password locked then return.\r
+  This event aggregates all the events of the ConIn devices in the spliter.\r
+\r
   If any events of physical ConIn devices are signaled, signal the ConIn\r
   spliter event. This will cause the calling code to call\r
   ConSplitterTextInReadKeyStroke ().\r
@@ -1479,54 +1448,7 @@ ConSplitterTextInWaitForKey (
   IN  EFI_EVENT                       Event,\r
   IN  VOID                            *Context\r
   );\r
-/**\r
-  Return TRUE if StdIn is locked. The ConIn device on the virtual handle is\r
-  the only device locked.\r
 \r
-  @retval TRUE                     StdIn locked\r
-  @retval FALSE                    StdIn working normally\r
-\r
-**/\r
-BOOLEAN\r
-ConSpliterConssoleControlStdInLocked (\r
-  VOID\r
-  );\r
-/**\r
-  This timer event will fire when StdIn is locked. It will check the key\r
-  sequence on StdIn to see if it matches the password. Any error in the\r
-  password will cause the check to reset. As long a mConIn.PasswordEnabled is\r
-  TRUE the StdIn splitter will not report any input.\r
-\r
-  @param  Event                  The Event this notify function registered to.\r
-  @param  Context                Pointer to the context data registerd to the\r
-                                 Event.\r
-**/\r
-VOID\r
-EFIAPI\r
-ConSpliterConsoleControlLockStdInEvent (\r
-  IN  EFI_EVENT                       Event,\r
-  IN  VOID                            *Context\r
-  );\r
-\r
-/**\r
-  If Password is NULL unlock the password state variable and set the event\r
-  timer. If the Password is too big return an error. If the Password is valid\r
-  Copy the Password and enable state variable and then arm the periodic timer\r
-\r
-  @param  This                     Console Control protocol pointer.\r
-  @param  Password                 The password input.\r
-\r
-  @retval EFI_SUCCESS              Lock the StdIn device\r
-  @retval EFI_INVALID_PARAMETER    Password is NULL\r
-  @retval EFI_OUT_OF_RESOURCES     Buffer allocation to store the password fails\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-ConSpliterConsoleControlLockStdIn (\r
-  IN  EFI_CONSOLE_CONTROL_PROTOCOL    *This,\r
-  IN  CHAR16                          *Password\r
-  );\r
 \r
 /**\r
   Reads the next keystroke from the input device. The WaitForKey Event can\r
@@ -1569,7 +1491,6 @@ ConSplitterSimplePointerReset (
 /**\r
   Reads the next keystroke from the input device. The WaitForKey Event can\r
   be used to test for existance of a keystroke via WaitForEvent () call.\r
-  If the ConIn is password locked make it look like no keystroke is availible\r
 \r
   @param  This                     A pointer to protocol instance.\r
   @param  State                    A pointer to state information on the pointer device\r
@@ -1589,7 +1510,6 @@ ConSplitterSimplePointerGetState (
 \r
 /**\r
   This event agregates all the events of the ConIn devices in the spliter.\r
-  If the ConIn is password locked then return.\r
   If any events of physical ConIn devices are signaled, signal the ConIn\r
   spliter event. This will cause the calling code to call\r
   ConSplitterTextInReadKeyStroke ().\r
@@ -1829,74 +1749,31 @@ ConSplitterTextOutEnableCursor (
 **/\r
 EFI_STATUS\r
 ConSplitterGrowBuffer (\r
-  IN  UINTN                           SizeOfCount,\r
-  IN  UINTN                           *Count,\r
+  IN      UINTN                       SizeOfCount,\r
+  IN OUT  UINTN                       *Count,\r
   IN OUT  VOID                        **Buffer\r
   );\r
 \r
 /**\r
-  Return the current video mode information. Also returns info about existence\r
-  of Graphics Output devices or UGA Draw devices in system, and if the Std In device is locked. All the\r
-  arguments are optional and only returned if a non NULL pointer is passed in.\r
+  Returns information for an available graphics mode that the graphics device\r
+  and the set of active video output devices supports.\r
 \r
-  @param  This                    Protocol instance pointer.\r
-  @param  Mode                    Are we in text of grahics mode.\r
-  @param  GopUgaExists            TRUE if Console Spliter has found a GOP or UGA device\r
-  @param  StdInLocked             TRUE if StdIn device is keyboard locked\r
+  @param  This                  The EFI_GRAPHICS_OUTPUT_PROTOCOL instance.\r
+  @param  ModeNumber            The mode number to return information on.\r
+  @param  SizeOfInfo            A pointer to the size, in bytes, of the Info buffer.\r
+  @param  Info                  A pointer to callee allocated buffer that returns information about ModeNumber.\r
 \r
-  @retval EFI_SUCCESS             Mode information returned.\r
-  @retval EFI_INVALID_PARAMETER   Invalid parameters.\r
+  @retval EFI_SUCCESS           Mode information returned.\r
+  @retval EFI_BUFFER_TOO_SMALL  The Info buffer was too small.\r
+  @retval EFI_DEVICE_ERROR      A hardware error occurred trying to retrieve the video mode.\r
+  @retval EFI_NOT_STARTED       Video display is not initialized. Call SetMode ()\r
+  @retval EFI_INVALID_PARAMETER One of the input args was NULL.\r
+  @retval EFI_OUT_OF_RESOURCES  No resource available.\r
 \r
 **/\r
 EFI_STATUS\r
 EFIAPI\r
-ConSpliterConsoleControlGetMode (\r
-  IN  EFI_CONSOLE_CONTROL_PROTOCOL    *This,\r
-  OUT EFI_CONSOLE_CONTROL_SCREEN_MODE *Mode,\r
-  OUT BOOLEAN                         *GopUgaExists,\r
-  OUT BOOLEAN                         *StdInLocked\r
-  );\r
-\r
-/**\r
-  Set the current mode to either text or graphics. Graphics is\r
-  for Quiet Boot.\r
-\r
-  @param  This                    Protocol instance pointer.\r
-  @param  Mode                    Mode to set the\r
-\r
-  @retval EFI_SUCCESS             Mode information returned.\r
-  @retval EFI_INVALID_PARAMETER   Invalid parameter.\r
-  @retval EFI_UNSUPPORTED         Operation unsupported.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-ConSpliterConsoleControlSetMode (\r
-  IN  EFI_CONSOLE_CONTROL_PROTOCOL    *This,\r
-  IN  EFI_CONSOLE_CONTROL_SCREEN_MODE Mode\r
-  );\r
-\r
-/**\r
-  Return the current video mode information.\r
-\r
-  @param  This                    Protocol instance pointer.\r
-  @param  ModeNumber              The mode number to return information on.\r
-  @param  SizeOfInfo              A pointer to the size, in bytes, of the Info\r
-                                  buffer.\r
-  @param  Info                    Caller allocated buffer that returns information\r
-                                  about ModeNumber.\r
-\r
-  @retval EFI_SUCCESS             Mode information returned.\r
-  @retval EFI_BUFFER_TOO_SMALL    The Info buffer was too small.\r
-  @retval EFI_DEVICE_ERROR        A hardware error occurred trying to retrieve the\r
-                                  video mode.\r
-  @retval EFI_NOT_STARTED         Video display is not initialized. Call SetMode ()\r
-  @retval EFI_INVALID_PARAMETER   One of the input args was NULL.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-ConSpliterGraphicsOutputQueryMode (\r
+ConSplitterGraphicsOutputQueryMode (\r
   IN  EFI_GRAPHICS_OUTPUT_PROTOCOL          *This,\r
   IN  UINT32                                ModeNumber,\r
   OUT UINTN                                 *SizeOfInfo,\r
@@ -1904,20 +1781,21 @@ ConSpliterGraphicsOutputQueryMode (
   );\r
 \r
 /**\r
-  Graphics output protocol interface to set video mode.\r
+  Set the video device into the specified mode and clears the visible portions of\r
+  the output display to black.\r
 \r
-  @param  This                    Protocol instance pointer.\r
-  @param  ModeNumber              The mode number to be set.\r
+  @param  This                  The EFI_GRAPHICS_OUTPUT_PROTOCOL instance.\r
+  @param  ModeNumber            Abstraction that defines the current video mode.\r
 \r
-  @retval EFI_SUCCESS             Graphics mode was changed.\r
-  @retval EFI_DEVICE_ERROR        The device had an error and could not complete\r
-                                  the request.\r
-  @retval EFI_UNSUPPORTED         ModeNumber is not supported by this device.\r
+  @retval EFI_SUCCESS           The graphics mode specified by ModeNumber was selected.\r
+  @retval EFI_DEVICE_ERROR      The device had an error and could not complete the request.\r
+  @retval EFI_UNSUPPORTED       ModeNumber is not supported by this device.\r
+  @retval EFI_OUT_OF_RESOURCES  No resource available.\r
 \r
 **/\r
 EFI_STATUS\r
 EFIAPI\r
-ConSpliterGraphicsOutputSetMode (\r
+ConSplitterGraphicsOutputSetMode (\r
   IN  EFI_GRAPHICS_OUTPUT_PROTOCOL * This,\r
   IN  UINT32                       ModeNumber\r
   );\r
@@ -1959,7 +1837,7 @@ ConSpliterGraphicsOutputSetMode (
   @param  DestinationX            X coordinate of destination for the BltBuffer.\r
   @param  DestinationY            Y coordinate of destination for the BltBuffer.\r
   @param  Width                   Width of rectangle in BltBuffer in pixels.\r
-  @param  Height                  Hight of rectangle in BltBuffer in pixels. \r
+  @param  Height                  Hight of rectangle in BltBuffer in pixels.\r
   @param  Delta                   OPTIONAL.\r
 \r
   @retval EFI_SUCCESS             The Blt operation completed.\r
@@ -1970,7 +1848,7 @@ ConSpliterGraphicsOutputSetMode (
 **/\r
 EFI_STATUS\r
 EFIAPI\r
-ConSpliterGraphicsOutputBlt (\r
+ConSplitterGraphicsOutputBlt (\r
   IN  EFI_GRAPHICS_OUTPUT_PROTOCOL                  *This,\r
   IN  EFI_GRAPHICS_OUTPUT_BLT_PIXEL                 *BltBuffer, OPTIONAL\r
   IN  EFI_GRAPHICS_OUTPUT_BLT_OPERATION             BltOperation,\r
@@ -1983,44 +1861,24 @@ ConSpliterGraphicsOutputBlt (
   IN  UINTN                                         Delta         OPTIONAL\r
   );\r
 \r
-/**\r
-  Write data from the buffer to video display based on Graphics Output setting. \r
-\r
-  @param  Private                 Consplitter Text Out pointer.\r
-  @param  GraphicsOutput          Graphics Output protocol pointer.\r
-  @param  UgaDraw                 UGA Draw protocol pointer.\r
-\r
-  @retval EFI_UNSUPPORTED         No graphics devcie available .\r
-  @retval EFI_SUCCESS             The Blt operation completed.\r
-  @retval EFI_INVALID_PARAMETER   BltOperation is not valid.\r
-  @retval EFI_DEVICE_ERROR        A hardware error occured writting to the video buffer.\r
-                 \r
-\r
-**/\r
-EFI_STATUS\r
-DevNullGopSync (\r
-  IN  TEXT_OUT_SPLITTER_PRIVATE_DATA  *Private,\r
-  IN  EFI_GRAPHICS_OUTPUT_PROTOCOL    *GraphicsOutput,\r
-  IN  EFI_UGA_DRAW_PROTOCOL           *UgaDraw\r
-  );\r
 \r
 /**\r
   Return the current video mode information.\r
 \r
-  @param  This                    Protocol instance pointer.\r
-  @param  HorizontalResolution    Current video horizontal resolution in pixels\r
-  @param  VerticalResolution      Current video vertical resolution in pixels\r
-  @param  ColorDepth              Current video color depth in bits per pixel\r
-  @param  RefreshRate             Current video refresh rate in Hz.\r
+  @param  This                  The EFI_UGA_DRAW_PROTOCOL instance.\r
+  @param  HorizontalResolution  The size of video screen in pixels in the X dimension.\r
+  @param  VerticalResolution    The size of video screen in pixels in the Y dimension.\r
+  @param  ColorDepth            Number of bits per pixel, currently defined to be 32.\r
+  @param  RefreshRate           The refresh rate of the monitor in Hertz.\r
 \r
-  @retval EFI_SUCCESS             Mode information returned.\r
-  @retval EFI_NOT_STARTED         Video display is not initialized. Call SetMode ()\r
-  @retval EFI_INVALID_PARAMETER   One of the input args was NULL.\r
+  @retval EFI_SUCCESS           Mode information returned.\r
+  @retval EFI_NOT_STARTED       Video display is not initialized. Call SetMode ()\r
+  @retval EFI_INVALID_PARAMETER One of the input args was NULL.\r
 \r
 **/\r
 EFI_STATUS\r
 EFIAPI\r
-ConSpliterUgaDrawGetMode (\r
+ConSplitterUgaDrawGetMode (\r
   IN  EFI_UGA_DRAW_PROTOCOL           *This,\r
   OUT UINT32                          *HorizontalResolution,\r
   OUT UINT32                          *VerticalResolution,\r
@@ -2029,22 +1887,22 @@ ConSpliterUgaDrawGetMode (
   );\r
 \r
 /**\r
-  Return the current video mode information.\r
+  Set the current video mode information.\r
 \r
-  @param  This                    Protocol instance pointer.\r
-  @param  HorizontalResolution    Current video horizontal resolution in pixels\r
-  @param  VerticalResolution      Current video vertical resolution in pixels\r
-  @param  ColorDepth              Current video color depth in bits per pixel\r
-  @param  RefreshRate             Current video refresh rate in Hz.\r
+  @param  This                 The EFI_UGA_DRAW_PROTOCOL instance.\r
+  @param  HorizontalResolution The size of video screen in pixels in the X dimension.\r
+  @param  VerticalResolution   The size of video screen in pixels in the Y dimension.\r
+  @param  ColorDepth           Number of bits per pixel, currently defined to be 32.\r
+  @param  RefreshRate          The refresh rate of the monitor in Hertz.\r
 \r
-  @retval EFI_SUCCESS             Mode information returned.\r
-  @retval EFI_NOT_STARTED         Video display is not initialized. Call SetMode ()\r
-  @retval EFI_OUT_OF_RESOURCES    Out of resources.\r
+  @retval EFI_SUCCESS          Mode information returned.\r
+  @retval EFI_NOT_STARTED      Video display is not initialized. Call SetMode ()\r
+  @retval EFI_OUT_OF_RESOURCES Out of resources.\r
 \r
 **/\r
 EFI_STATUS\r
 EFIAPI\r
-ConSpliterUgaDrawSetMode (\r
+ConSplitterUgaDrawSetMode (\r
   IN  EFI_UGA_DRAW_PROTOCOL           *This,\r
   IN UINT32                           HorizontalResolution,\r
   IN UINT32                           VerticalResolution,\r
@@ -2053,54 +1911,57 @@ ConSpliterUgaDrawSetMode (
   );\r
 \r
 /**\r
-  The following table defines actions for BltOperations.\r
+  Blt a rectangle of pixels on the graphics screen.\r
 \r
-  EfiUgaVideoFill - Write data from the  BltBuffer pixel (SourceX, SourceY)\r
-  directly to every pixel of the video display rectangle\r
-  (DestinationX, DestinationY)\r
-  (DestinationX + Width, DestinationY + Height).\r
-  Only one pixel will be used from the BltBuffer. Delta is NOT used.\r
-  EfiUgaVideoToBltBuffer - Read data from the video display rectangle\r
-  (SourceX, SourceY) (SourceX + Width, SourceY + Height) and place it in\r
-  the BltBuffer rectangle (DestinationX, DestinationY )\r
-  (DestinationX + Width, DestinationY + Height). If DestinationX or\r
-  DestinationY is not zero then Delta must be set to the length in bytes\r
-  of a row in the BltBuffer.\r
-  EfiUgaBltBufferToVideo - Write data from the  BltBuffer rectangle\r
-  (SourceX, SourceY) (SourceX + Width, SourceY + Height) directly to the\r
-  video display rectangle (DestinationX, DestinationY)\r
-  (DestinationX + Width, DestinationY + Height). If SourceX or SourceY is\r
-  not zero then Delta must be set to the length in bytes of a row in the\r
-  BltBuffer.\r
-  EfiUgaVideoToVideo - Copy from the video display rectangle\r
-  (SourceX, SourceY) (SourceX + Width, SourceY + Height) .\r
-  to the video display rectangle (DestinationX, DestinationY)\r
-  (DestinationX + Width, DestinationY + Height).\r
-  The BltBuffer and Delta  are not used in this mode.\r
-\r
-  @param  This                    Protocol instance pointer.\r
-  @param  BltBuffer               Buffer containing data to blit into video buffer.\r
-                                  This buffer has a size of\r
-                                  Width*Height*sizeof(EFI_UGA_PIXEL)\r
-  @param  BltOperation            Operation to perform on BlitBuffer and video\r
-                                  memory\r
-  @param  SourceX                 X coordinate of source for the BltBuffer.\r
-  @param  SourceY                 Y coordinate of source for the BltBuffer.\r
-  @param  DestinationX            X coordinate of destination for the BltBuffer.\r
-  @param  DestinationY            Y coordinate of destination for the BltBuffer.\r
-  @param  Width                   Width of rectangle in BltBuffer in pixels.\r
-  @param  Height                  Hight of rectangle in BltBuffer in pixels.\r
-  @param  Delta                   OPTIONAL.\r
+  The following table defines actions for BltOperations.\r
 \r
-  @retval EFI_SUCCESS             The Blt operation completed.\r
-  @retval EFI_INVALID_PARAMETER   BltOperation is not valid.\r
-  @retval EFI_DEVICE_ERROR        A hardware error occured writting to the video\r
-                                  buffer.\r
+  EfiUgaVideoFill:\r
+    Write data from the  BltBuffer pixel (SourceX, SourceY)\r
+    directly to every pixel of the video display rectangle\r
+    (DestinationX, DestinationY)\r
+    (DestinationX + Width, DestinationY + Height).\r
+    Only one pixel will be used from the BltBuffer. Delta is NOT used.\r
+  EfiUgaVideoToBltBuffer:\r
+    Read data from the video display rectangle\r
+    (SourceX, SourceY) (SourceX + Width, SourceY + Height) and place it in\r
+    the BltBuffer rectangle (DestinationX, DestinationY )\r
+    (DestinationX + Width, DestinationY + Height). If DestinationX or\r
+    DestinationY is not zero then Delta must be set to the length in bytes\r
+    of a row in the BltBuffer.\r
+  EfiUgaBltBufferToVideo:\r
+    Write data from the  BltBuffer rectangle\r
+    (SourceX, SourceY) (SourceX + Width, SourceY + Height) directly to the\r
+    video display rectangle (DestinationX, DestinationY)\r
+    (DestinationX + Width, DestinationY + Height). If SourceX or SourceY is\r
+    not zero then Delta must be set to the length in bytes of a row in the\r
+    BltBuffer.\r
+  EfiUgaVideoToVideo:\r
+    Copy from the video display rectangle\r
+    (SourceX, SourceY) (SourceX + Width, SourceY + Height) .\r
+    to the video display rectangle (DestinationX, DestinationY)\r
+    (DestinationX + Width, DestinationY + Height).\r
+    The BltBuffer and Delta  are not used in this mode.\r
+\r
+  @param  This           Protocol instance pointer.\r
+  @param  BltBuffer      Buffer containing data to blit into video buffer. This\r
+                         buffer has a size of Width*Height*sizeof(EFI_UGA_PIXEL)\r
+  @param  BltOperation   Operation to perform on BlitBuffer and video memory\r
+  @param  SourceX        X coordinate of source for the BltBuffer.\r
+  @param  SourceY        Y coordinate of source for the BltBuffer.\r
+  @param  DestinationX   X coordinate of destination for the BltBuffer.\r
+  @param  DestinationY   Y coordinate of destination for the BltBuffer.\r
+  @param  Width          Width of rectangle in BltBuffer in pixels.\r
+  @param  Height         Hight of rectangle in BltBuffer in pixels.\r
+  @param  Delta          OPTIONAL\r
+\r
+  @retval EFI_SUCCESS            The Blt operation completed.\r
+  @retval EFI_INVALID_PARAMETER  BltOperation is not valid.\r
+  @retval EFI_DEVICE_ERROR       A hardware error occured writting to the video buffer.\r
 \r
 **/\r
 EFI_STATUS\r
 EFIAPI\r
-ConSpliterUgaDrawBlt (\r
+ConSplitterUgaDrawBlt (\r
   IN  EFI_UGA_DRAW_PROTOCOL                         *This,\r
   IN  EFI_UGA_PIXEL                                 *BltBuffer, OPTIONAL\r
   IN  EFI_UGA_BLT_OPERATION                         BltOperation,\r
@@ -2113,142 +1974,18 @@ ConSpliterUgaDrawBlt (
   IN  UINTN                                         Delta         OPTIONAL\r
   );\r
 \r
-/**\r
-  Write data from the buffer to video display based on UGA Draw setting. \r
-\r
-  @param  Private                 Consplitter Text Out pointer.\r
-  @param  GraphicsOutput          Graphics Output protocol pointer.\r
-  @param  UgaDraw                 UGA Draw protocol pointer.\r
-\r
-  @retval EFI_UNSUPPORTED         No graphics devcie available .\r
-  @retval EFI_SUCCESS             The Blt operation completed.\r
-  @retval EFI_INVALID_PARAMETER   BltOperation is not valid.\r
-  @retval EFI_DEVICE_ERROR        A hardware error occured writting to the video buffer.\r
-                  \r
-**/\r
-EFI_STATUS\r
-DevNullUgaSync (\r
-  IN  TEXT_OUT_SPLITTER_PRIVATE_DATA  *Private,\r
-  IN  EFI_GRAPHICS_OUTPUT_PROTOCOL    *GraphicsOutput,\r
-  IN  EFI_UGA_DRAW_PROTOCOL           *UgaDraw\r
-  );\r
-\r
-/**\r
-  Write a Unicode string to the output device.\r
-\r
-  @param  Private                 Pointer to the console output splitter's private\r
-                                  data. It indicates the calling context.\r
-  @param  WString                 The NULL-terminated Unicode string to be\r
-                                  displayed on the output device(s). All output\r
-                                  devices must also support the Unicode drawing\r
-                                  defined in this file.\r
-\r
-  @retval EFI_SUCCESS             The string was output to the device.\r
-  @retval EFI_DEVICE_ERROR        The device reported an error while attempting to\r
-                                  output the text.\r
-  @retval EFI_UNSUPPORTED         The output device's mode is not currently in a\r
-                                  defined text mode.\r
-  @retval EFI_WARN_UNKNOWN_GLYPH  This warning code indicates that some of the\r
-                                  characters in the Unicode string could not be\r
-                                  rendered and were skipped.\r
-\r
-**/\r
-EFI_STATUS\r
-DevNullTextOutOutputString (\r
-  IN  TEXT_OUT_SPLITTER_PRIVATE_DATA  *Private,\r
-  IN  CHAR16                          *WString\r
-  );\r
-\r
 /**\r
   Sets the output device(s) to a specified mode.\r
 \r
-  @param  Private                 Private data structure pointer.\r
+  @param  Private                 Text Out Splitter pointer.\r
   @param  ModeNumber              The mode number to set.\r
 \r
-  @retval EFI_SUCCESS             The requested text mode was set.\r
-  @retval EFI_DEVICE_ERROR        The device had an error and could not complete\r
-                                  the request.\r
-  @retval EFI_UNSUPPORTED         The mode number was not valid.\r
-  @retval EFI_OUT_OF_RESOURCES    Out of resources.\r
-\r
 **/\r
-EFI_STATUS\r
-DevNullTextOutSetMode (\r
+VOID\r
+TextOutSetMode (\r
   IN  TEXT_OUT_SPLITTER_PRIVATE_DATA  *Private,\r
   IN  UINTN                           ModeNumber\r
   );\r
 \r
-/**\r
-  Clears the output device(s) display to the currently selected background\r
-  color.\r
-\r
-  @param  Private                 Protocol instance pointer.\r
-\r
-  @retval EFI_SUCCESS             The operation completed successfully.\r
-  @retval EFI_DEVICE_ERROR        The device had an error and could not complete\r
-                                  the request.\r
-  @retval EFI_UNSUPPORTED         The output device is not in a valid text mode.\r
-\r
-**/\r
-EFI_STATUS\r
-DevNullTextOutClearScreen (\r
-  IN  TEXT_OUT_SPLITTER_PRIVATE_DATA  *Private\r
-  );\r
-\r
-/**\r
-  Sets the current coordinates of the cursor position.\r
-\r
-  @param  Private                 Protocol instance pointer.\r
-  @param  Column                  \r
-  @param  Row                     the position to set the cursor to. Must be\r
-                                  greater than or equal to zero and less than the\r
-                                  number of columns and rows by QueryMode ().\r
-\r
-  @retval EFI_SUCCESS             The operation completed successfully.\r
-  @retval EFI_DEVICE_ERROR        The device had an error and could not complete\r
-                                  the request.\r
-  @retval EFI_UNSUPPORTED         The output device is not in a valid text mode, or\r
-                                  the cursor position is invalid for the current\r
-                                  mode.\r
-\r
-**/\r
-EFI_STATUS\r
-DevNullTextOutSetCursorPosition (\r
-  IN  TEXT_OUT_SPLITTER_PRIVATE_DATA  *Private,\r
-  IN  UINTN                           Column,\r
-  IN  UINTN                           Row\r
-  );\r
-\r
-/**\r
-  Implements SIMPLE_TEXT_OUTPUT.EnableCursor().\r
-  In this driver, the cursor cannot be hidden.\r
-\r
-  @param  Private                 Indicates the calling context.\r
-  @param  Visible                 If TRUE, the cursor is set to be visible, If\r
-                                  FALSE, the cursor is set to be invisible.\r
-\r
-  @retval EFI_SUCCESS             The request is valid.\r
-\r
-**/\r
-EFI_STATUS\r
-DevNullTextOutEnableCursor (\r
-  IN  TEXT_OUT_SPLITTER_PRIVATE_DATA  *Private,\r
-  IN  BOOLEAN                         Visible\r
-  );\r
-\r
-/**\r
-  Take the DevNull TextOut device and update the Simple Text Out on every\r
-  UGA device.\r
-\r
-  @param  Private                 Indicates the calling context.\r
-\r
-  @retval EFI_SUCCESS             The request is valid.\r
-  @retval other                   Return status of TextOut->OutputString ()\r
-\r
-**/\r
-EFI_STATUS\r
-DevNullSyncStdOut (\r
-  IN  TEXT_OUT_SPLITTER_PRIVATE_DATA  *Private\r
-  );\r
 \r
 #endif\r