]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitter.h
MdeModulePkg: Apply uncrustify changes
[mirror_edk2.git] / MdeModulePkg / Universal / Console / ConSplitterDxe / ConSplitter.h
index 1ab8264d8e5421fc1033a19ae3246682ad25089e..a1fe747260587f708ce5c3f6fa6747807273ed6e 100644 (file)
@@ -1,14 +1,8 @@
 /** @file\r
   Private data structures for the Console Splitter driver\r
 \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
-\r
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+Copyright (c) 2006 - 2019, Intel Corporation. All rights reserved.<BR>\r
+SPDX-License-Identifier: BSD-2-Clause-Patent\r
 \r
 **/\r
 \r
@@ -16,6 +10,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #define _CON_SPLITTER_H_\r
 \r
 #include <Uefi.h>\r
+#include <PiDxe.h>\r
 \r
 #include <Protocol/DevicePath.h>\r
 #include <Protocol/ComponentName.h>\r
@@ -31,6 +26,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #include <Guid/ConsoleInDevice.h>\r
 #include <Guid/StandardErrorDevice.h>\r
 #include <Guid/ConsoleOutDevice.h>\r
+#include <Guid/ConnectConInEvent.h>\r
 \r
 #include <Library/PcdLib.h>\r
 #include <Library/DebugLib.h>\r
@@ -42,65 +38,60 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #include <Library/UefiBootServicesTableLib.h>\r
 #include <Library/UefiRuntimeServicesTableLib.h>\r
 \r
-\r
 //\r
 // Driver Binding Externs\r
 //\r
-extern EFI_DRIVER_BINDING_PROTOCOL  gConSplitterConInDriverBinding;\r
-extern EFI_COMPONENT_NAME_PROTOCOL  gConSplitterConInComponentName;\r
-extern EFI_COMPONENT_NAME2_PROTOCOL gConSplitterConInComponentName2;\r
-extern EFI_DRIVER_BINDING_PROTOCOL  gConSplitterSimplePointerDriverBinding;\r
-extern EFI_COMPONENT_NAME_PROTOCOL  gConSplitterSimplePointerComponentName;\r
-extern EFI_COMPONENT_NAME2_PROTOCOL gConSplitterSimplePointerComponentName2;\r
-extern EFI_DRIVER_BINDING_PROTOCOL  gConSplitterAbsolutePointerDriverBinding;\r
-extern EFI_COMPONENT_NAME_PROTOCOL  gConSplitterAbsolutePointerComponentName;\r
-extern EFI_COMPONENT_NAME2_PROTOCOL gConSplitterAbsolutePointerComponentName2;\r
-extern EFI_DRIVER_BINDING_PROTOCOL  gConSplitterConOutDriverBinding;\r
-extern EFI_COMPONENT_NAME_PROTOCOL  gConSplitterConOutComponentName;\r
-extern EFI_COMPONENT_NAME2_PROTOCOL gConSplitterConOutComponentName2;\r
-extern EFI_DRIVER_BINDING_PROTOCOL  gConSplitterStdErrDriverBinding;\r
-extern EFI_COMPONENT_NAME_PROTOCOL  gConSplitterStdErrComponentName;\r
-extern EFI_COMPONENT_NAME2_PROTOCOL gConSplitterStdErrComponentName2;\r
-\r
+extern EFI_DRIVER_BINDING_PROTOCOL   gConSplitterConInDriverBinding;\r
+extern EFI_COMPONENT_NAME_PROTOCOL   gConSplitterConInComponentName;\r
+extern EFI_COMPONENT_NAME2_PROTOCOL  gConSplitterConInComponentName2;\r
+extern EFI_DRIVER_BINDING_PROTOCOL   gConSplitterSimplePointerDriverBinding;\r
+extern EFI_COMPONENT_NAME_PROTOCOL   gConSplitterSimplePointerComponentName;\r
+extern EFI_COMPONENT_NAME2_PROTOCOL  gConSplitterSimplePointerComponentName2;\r
+extern EFI_DRIVER_BINDING_PROTOCOL   gConSplitterAbsolutePointerDriverBinding;\r
+extern EFI_COMPONENT_NAME_PROTOCOL   gConSplitterAbsolutePointerComponentName;\r
+extern EFI_COMPONENT_NAME2_PROTOCOL  gConSplitterAbsolutePointerComponentName2;\r
+extern EFI_DRIVER_BINDING_PROTOCOL   gConSplitterConOutDriverBinding;\r
+extern EFI_COMPONENT_NAME_PROTOCOL   gConSplitterConOutComponentName;\r
+extern EFI_COMPONENT_NAME2_PROTOCOL  gConSplitterConOutComponentName2;\r
+extern EFI_DRIVER_BINDING_PROTOCOL   gConSplitterStdErrDriverBinding;\r
+extern EFI_COMPONENT_NAME_PROTOCOL   gConSplitterStdErrComponentName;\r
+extern EFI_COMPONENT_NAME2_PROTOCOL  gConSplitterStdErrComponentName2;\r
 \r
 //\r
 // These definitions were in the old Hii protocol, but are not in the new UEFI\r
 // version. So they are defined locally.\r
 //\r
-#define UNICODE_NARROW_CHAR   0xFFF0\r
-#define UNICODE_WIDE_CHAR     0xFFF1\r
-\r
+#define UNICODE_NARROW_CHAR  0xFFF0\r
+#define UNICODE_WIDE_CHAR    0xFFF1\r
 \r
 //\r
 // Private Data Structures\r
 //\r
-#define CONSOLE_SPLITTER_CONSOLES_ALLOC_UNIT  32\r
-#define CONSOLE_SPLITTER_MODES_ALLOC_UNIT     32\r
-\r
+#define CONSOLE_SPLITTER_ALLOC_UNIT  32\r
 \r
 typedef struct {\r
-  UINTN   Column;\r
-  UINTN   Row;\r
+  UINTN    Column;\r
+  UINTN    Row;\r
 } 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
+#define KEY_STATE_VALID_EXPOSED  (EFI_TOGGLE_STATE_VALID | EFI_KEY_STATE_EXPOSED)\r
 \r
-#define TEXT_IN_EX_SPLITTER_NOTIFY_SIGNATURE    SIGNATURE_32 ('T', 'i', 'S', 'n')\r
+#define TEXT_IN_EX_SPLITTER_NOTIFY_SIGNATURE  SIGNATURE_32 ('T', 'i', 'S', 'n')\r
 \r
 //\r
 // Private data for Text In Ex Splitter Notify\r
 //\r
 typedef struct _TEXT_IN_EX_SPLITTER_NOTIFY {\r
-  UINTN                                 Signature;\r
-  EFI_HANDLE                            *NotifyHandleList;\r
-  EFI_HANDLE                            NotifyHandle;\r
-  EFI_KEY_DATA                          KeyData;\r
-  EFI_KEY_NOTIFY_FUNCTION               KeyNotificationFn;\r
-  LIST_ENTRY                            NotifyEntry;\r
+  UINTN                      Signature;\r
+  VOID                       **NotifyHandleList;\r
+  EFI_KEY_DATA               KeyData;\r
+  EFI_KEY_NOTIFY_FUNCTION    KeyNotificationFn;\r
+  LIST_ENTRY                 NotifyEntry;\r
 } TEXT_IN_EX_SPLITTER_NOTIFY;\r
 \r
 #define TEXT_IN_EX_SPLITTER_NOTIFY_FROM_THIS(a)  \\r
@@ -110,42 +101,54 @@ typedef struct _TEXT_IN_EX_SPLITTER_NOTIFY {
       TEXT_IN_EX_SPLITTER_NOTIFY_SIGNATURE       \\r
       )\r
 \r
-#define TEXT_IN_SPLITTER_PRIVATE_DATA_SIGNATURE SIGNATURE_32 ('T', 'i', 'S', 'p')\r
+#define TEXT_IN_SPLITTER_PRIVATE_DATA_SIGNATURE  SIGNATURE_32 ('T', 'i', 'S', 'p')\r
 \r
 //\r
 // Private data for the Console In splitter\r
 //\r
 typedef struct {\r
-  UINT64                             Signature;\r
-  EFI_HANDLE                         VirtualHandle;\r
-\r
-  EFI_SIMPLE_TEXT_INPUT_PROTOCOL     TextIn;\r
-  UINTN                              CurrentNumberOfConsoles;\r
-  EFI_SIMPLE_TEXT_INPUT_PROTOCOL     **TextInList;\r
-  UINTN                              TextInListCount;\r
-\r
-  EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL  TextInEx;\r
-  UINTN                              CurrentNumberOfExConsoles;\r
-  EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL  **TextInExList;\r
-  UINTN                              TextInExListCount;\r
-  LIST_ENTRY                         NotifyList;\r
-\r
-\r
-  EFI_SIMPLE_POINTER_PROTOCOL        SimplePointer;\r
-  EFI_SIMPLE_POINTER_MODE            SimplePointerMode;\r
-  UINTN                              CurrentNumberOfPointers;\r
-  EFI_SIMPLE_POINTER_PROTOCOL        **PointerList;\r
-  UINTN                              PointerListCount;\r
-\r
-  EFI_ABSOLUTE_POINTER_PROTOCOL      AbsolutePointer;\r
-  EFI_ABSOLUTE_POINTER_MODE          AbsolutePointerMode;\r
-  UINTN                              CurrentNumberOfAbsolutePointers;\r
-  EFI_ABSOLUTE_POINTER_PROTOCOL      **AbsolutePointerList;\r
-  UINTN                              AbsolutePointerListCount;\r
-  BOOLEAN                            AbsoluteInputEventSignalState;\r
-\r
-  BOOLEAN                            KeyEventSignalState;\r
-  BOOLEAN                            InputEventSignalState;\r
+  UINT64                               Signature;\r
+  EFI_HANDLE                           VirtualHandle;\r
+\r
+  EFI_SIMPLE_TEXT_INPUT_PROTOCOL       TextIn;\r
+  UINTN                                CurrentNumberOfConsoles;\r
+  EFI_SIMPLE_TEXT_INPUT_PROTOCOL       **TextInList;\r
+  UINTN                                TextInListCount;\r
+\r
+  EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL    TextInEx;\r
+  UINTN                                CurrentNumberOfExConsoles;\r
+  EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL    **TextInExList;\r
+  UINTN                                TextInExListCount;\r
+  LIST_ENTRY                           NotifyList;\r
+  EFI_KEY_DATA                         *KeyQueue;\r
+  UINTN                                CurrentNumberOfKeys;\r
+  //\r
+  // It will be initialized and synced between console input devices\r
+  // for toggle state sync.\r
+  //\r
+  EFI_KEY_TOGGLE_STATE                 PhysicalKeyToggleState;\r
+  //\r
+  // It will be initialized and used to record if virtual KeyState\r
+  // has been required to be exposed.\r
+  //\r
+  BOOLEAN                              VirtualKeyStateExported;\r
+\r
+  EFI_SIMPLE_POINTER_PROTOCOL          SimplePointer;\r
+  EFI_SIMPLE_POINTER_MODE              SimplePointerMode;\r
+  UINTN                                CurrentNumberOfPointers;\r
+  EFI_SIMPLE_POINTER_PROTOCOL          **PointerList;\r
+  UINTN                                PointerListCount;\r
+\r
+  EFI_ABSOLUTE_POINTER_PROTOCOL        AbsolutePointer;\r
+  EFI_ABSOLUTE_POINTER_MODE            AbsolutePointerMode;\r
+  UINTN                                CurrentNumberOfAbsolutePointers;\r
+  EFI_ABSOLUTE_POINTER_PROTOCOL        **AbsolutePointerList;\r
+  UINTN                                AbsolutePointerListCount;\r
+  BOOLEAN                              AbsoluteInputEventSignalState;\r
+\r
+  BOOLEAN                              KeyEventSignalState;\r
+  BOOLEAN                              InputEventSignalState;\r
+  EFI_EVENT                            ConnectConInEvent;\r
 } TEXT_IN_SPLITTER_PRIVATE_DATA;\r
 \r
 #define TEXT_IN_SPLITTER_PRIVATE_DATA_FROM_THIS(a)  \\r
@@ -175,43 +178,42 @@ typedef struct {
       TEXT_IN_SPLITTER_PRIVATE_DATA_SIGNATURE                       \\r
       )\r
 \r
-\r
 #define TEXT_OUT_SPLITTER_PRIVATE_DATA_SIGNATURE  SIGNATURE_32 ('T', 'o', 'S', 'p')\r
 \r
 typedef struct {\r
-  EFI_GRAPHICS_OUTPUT_PROTOCOL     *GraphicsOutput;\r
-  EFI_UGA_DRAW_PROTOCOL            *UgaDraw;\r
-  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL  *TextOut;\r
+  EFI_GRAPHICS_OUTPUT_PROTOCOL       *GraphicsOutput;\r
+  EFI_UGA_DRAW_PROTOCOL              *UgaDraw;\r
+  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL    *TextOut;\r
 } TEXT_OUT_AND_GOP_DATA;\r
 \r
 //\r
 // Private data for the Console Out splitter\r
 //\r
 typedef struct {\r
-  UINT64                                Signature;\r
-  EFI_HANDLE                            VirtualHandle;\r
-  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL       TextOut;\r
-  EFI_SIMPLE_TEXT_OUTPUT_MODE           TextOutMode;\r
-\r
-  EFI_UGA_DRAW_PROTOCOL                 UgaDraw;\r
-  UINT32                                UgaHorizontalResolution;\r
-  UINT32                                UgaVerticalResolution;\r
-  UINT32                                UgaColorDepth;\r
-  UINT32                                UgaRefreshRate;\r
-\r
-  EFI_GRAPHICS_OUTPUT_PROTOCOL          GraphicsOutput;\r
-  EFI_GRAPHICS_OUTPUT_MODE_INFORMATION  *GraphicsOutputModeBuffer;\r
-  UINTN                                 CurrentNumberOfGraphicsOutput;\r
-  UINTN                                 CurrentNumberOfUgaDraw;\r
-  BOOLEAN                               HardwareNeedsStarting;\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
+  UINT64                                  Signature;\r
+  EFI_HANDLE                              VirtualHandle;\r
+  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL         TextOut;\r
+  EFI_SIMPLE_TEXT_OUTPUT_MODE             TextOutMode;\r
+\r
+  EFI_UGA_DRAW_PROTOCOL                   UgaDraw;\r
+  UINT32                                  UgaHorizontalResolution;\r
+  UINT32                                  UgaVerticalResolution;\r
+  UINT32                                  UgaColorDepth;\r
+  UINT32                                  UgaRefreshRate;\r
+\r
+  EFI_GRAPHICS_OUTPUT_PROTOCOL            GraphicsOutput;\r
+  EFI_GRAPHICS_OUTPUT_MODE_INFORMATION    *GraphicsOutputModeBuffer;\r
+  UINTN                                   CurrentNumberOfGraphicsOutput;\r
+  UINTN                                   CurrentNumberOfUgaDraw;\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
+  BOOLEAN                                 AddingConOutDevice;\r
 } TEXT_OUT_SPLITTER_PRIVATE_DATA;\r
 \r
 #define TEXT_OUT_SPLITTER_PRIVATE_DATA_FROM_THIS(a) \\r
@@ -264,8 +266,8 @@ typedef struct {
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterDriverEntry (\r
-  IN EFI_HANDLE                       ImageHandle,\r
-  IN EFI_SYSTEM_TABLE                 *SystemTable\r
+  IN EFI_HANDLE        ImageHandle,\r
+  IN EFI_SYSTEM_TABLE  *SystemTable\r
   );\r
 \r
 /**\r
@@ -281,7 +283,7 @@ ConSplitterDriverEntry (
 **/\r
 EFI_STATUS\r
 ConSplitterTextInConstructor (\r
-  TEXT_IN_SPLITTER_PRIVATE_DATA       *ConInPrivate\r
+  TEXT_IN_SPLITTER_PRIVATE_DATA  *ConInPrivate\r
   );\r
 \r
 /**\r
@@ -296,10 +298,9 @@ ConSplitterTextInConstructor (
 **/\r
 EFI_STATUS\r
 ConSplitterTextOutConstructor (\r
-  TEXT_OUT_SPLITTER_PRIVATE_DATA      *ConOutPrivate\r
+  TEXT_OUT_SPLITTER_PRIVATE_DATA  *ConOutPrivate\r
   );\r
 \r
-\r
 /**\r
   Test to see if Console In Device could be supported on the Controller.\r
 \r
@@ -315,9 +316,9 @@ ConSplitterTextOutConstructor (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterConInDriverBindingSupported (\r
-  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,\r
-  IN  EFI_HANDLE                      ControllerHandle,\r
-  IN  EFI_DEVICE_PATH_PROTOCOL        *RemainingDevicePath\r
+  IN  EFI_DRIVER_BINDING_PROTOCOL  *This,\r
+  IN  EFI_HANDLE                   ControllerHandle,\r
+  IN  EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath\r
   );\r
 \r
 /**\r
@@ -335,9 +336,9 @@ ConSplitterConInDriverBindingSupported (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterSimplePointerDriverBindingSupported (\r
-  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,\r
-  IN  EFI_HANDLE                      ControllerHandle,\r
-  IN  EFI_DEVICE_PATH_PROTOCOL        *RemainingDevicePath\r
+  IN  EFI_DRIVER_BINDING_PROTOCOL  *This,\r
+  IN  EFI_HANDLE                   ControllerHandle,\r
+  IN  EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath\r
   );\r
 \r
 /**\r
@@ -355,9 +356,9 @@ ConSplitterSimplePointerDriverBindingSupported (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterConOutDriverBindingSupported (\r
-  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,\r
-  IN  EFI_HANDLE                      ControllerHandle,\r
-  IN  EFI_DEVICE_PATH_PROTOCOL        *RemainingDevicePath\r
+  IN  EFI_DRIVER_BINDING_PROTOCOL  *This,\r
+  IN  EFI_HANDLE                   ControllerHandle,\r
+  IN  EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath\r
   );\r
 \r
 /**\r
@@ -375,9 +376,9 @@ ConSplitterConOutDriverBindingSupported (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterStdErrDriverBindingSupported (\r
-  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,\r
-  IN  EFI_HANDLE                      ControllerHandle,\r
-  IN  EFI_DEVICE_PATH_PROTOCOL        *RemainingDevicePath\r
+  IN  EFI_DRIVER_BINDING_PROTOCOL  *This,\r
+  IN  EFI_HANDLE                   ControllerHandle,\r
+  IN  EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath\r
   );\r
 \r
 /**\r
@@ -395,9 +396,9 @@ ConSplitterStdErrDriverBindingSupported (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterConInDriverBindingStart (\r
-  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,\r
-  IN  EFI_HANDLE                      ControllerHandle,\r
-  IN  EFI_DEVICE_PATH_PROTOCOL        *RemainingDevicePath\r
+  IN  EFI_DRIVER_BINDING_PROTOCOL  *This,\r
+  IN  EFI_HANDLE                   ControllerHandle,\r
+  IN  EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath\r
   );\r
 \r
 /**\r
@@ -415,9 +416,9 @@ ConSplitterConInDriverBindingStart (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterSimplePointerDriverBindingStart (\r
-  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,\r
-  IN  EFI_HANDLE                      ControllerHandle,\r
-  IN  EFI_DEVICE_PATH_PROTOCOL        *RemainingDevicePath\r
+  IN  EFI_DRIVER_BINDING_PROTOCOL  *This,\r
+  IN  EFI_HANDLE                   ControllerHandle,\r
+  IN  EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath\r
   );\r
 \r
 /**\r
@@ -435,9 +436,9 @@ ConSplitterSimplePointerDriverBindingStart (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterConOutDriverBindingStart (\r
-  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,\r
-  IN  EFI_HANDLE                      ControllerHandle,\r
-  IN  EFI_DEVICE_PATH_PROTOCOL        *RemainingDevicePath\r
+  IN  EFI_DRIVER_BINDING_PROTOCOL  *This,\r
+  IN  EFI_HANDLE                   ControllerHandle,\r
+  IN  EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath\r
   );\r
 \r
 /**\r
@@ -455,9 +456,9 @@ ConSplitterConOutDriverBindingStart (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterStdErrDriverBindingStart (\r
-  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,\r
-  IN  EFI_HANDLE                      ControllerHandle,\r
-  IN  EFI_DEVICE_PATH_PROTOCOL        *RemainingDevicePath\r
+  IN  EFI_DRIVER_BINDING_PROTOCOL  *This,\r
+  IN  EFI_HANDLE                   ControllerHandle,\r
+  IN  EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath\r
   );\r
 \r
 /**\r
@@ -476,10 +477,10 @@ ConSplitterStdErrDriverBindingStart (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterConInDriverBindingStop (\r
-  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,\r
-  IN  EFI_HANDLE                      ControllerHandle,\r
-  IN  UINTN                           NumberOfChildren,\r
-  IN  EFI_HANDLE                      *ChildHandleBuffer\r
+  IN  EFI_DRIVER_BINDING_PROTOCOL  *This,\r
+  IN  EFI_HANDLE                   ControllerHandle,\r
+  IN  UINTN                        NumberOfChildren,\r
+  IN  EFI_HANDLE                   *ChildHandleBuffer\r
   );\r
 \r
 /**\r
@@ -499,10 +500,10 @@ ConSplitterConInDriverBindingStop (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterSimplePointerDriverBindingStop (\r
-  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,\r
-  IN  EFI_HANDLE                      ControllerHandle,\r
-  IN  UINTN                           NumberOfChildren,\r
-  IN  EFI_HANDLE                      *ChildHandleBuffer\r
+  IN  EFI_DRIVER_BINDING_PROTOCOL  *This,\r
+  IN  EFI_HANDLE                   ControllerHandle,\r
+  IN  UINTN                        NumberOfChildren,\r
+  IN  EFI_HANDLE                   *ChildHandleBuffer\r
   );\r
 \r
 /**\r
@@ -521,10 +522,10 @@ ConSplitterSimplePointerDriverBindingStop (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterConOutDriverBindingStop (\r
-  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,\r
-  IN  EFI_HANDLE                      ControllerHandle,\r
-  IN  UINTN                           NumberOfChildren,\r
-  IN  EFI_HANDLE                      *ChildHandleBuffer\r
+  IN  EFI_DRIVER_BINDING_PROTOCOL  *This,\r
+  IN  EFI_HANDLE                   ControllerHandle,\r
+  IN  UINTN                        NumberOfChildren,\r
+  IN  EFI_HANDLE                   *ChildHandleBuffer\r
   );\r
 \r
 /**\r
@@ -543,13 +544,12 @@ ConSplitterConOutDriverBindingStop (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterStdErrDriverBindingStop (\r
-  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,\r
-  IN  EFI_HANDLE                      ControllerHandle,\r
-  IN  UINTN                           NumberOfChildren,\r
-  IN  EFI_HANDLE                      *ChildHandleBuffer\r
+  IN  EFI_DRIVER_BINDING_PROTOCOL  *This,\r
+  IN  EFI_HANDLE                   ControllerHandle,\r
+  IN  UINTN                        NumberOfChildren,\r
+  IN  EFI_HANDLE                   *ChildHandleBuffer\r
   );\r
 \r
-\r
 /**\r
   Test to see if Absolute Pointer protocol could be supported on the Controller.\r
 \r
@@ -565,9 +565,9 @@ ConSplitterStdErrDriverBindingStop (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterAbsolutePointerDriverBindingSupported (\r
-  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,\r
-  IN  EFI_HANDLE                      ControllerHandle,\r
-  IN  EFI_DEVICE_PATH_PROTOCOL        *RemainingDevicePath\r
+  IN  EFI_DRIVER_BINDING_PROTOCOL  *This,\r
+  IN  EFI_HANDLE                   ControllerHandle,\r
+  IN  EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath\r
   );\r
 \r
 /**\r
@@ -585,9 +585,9 @@ ConSplitterAbsolutePointerDriverBindingSupported (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterAbsolutePointerDriverBindingStart (\r
-  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,\r
-  IN  EFI_HANDLE                      ControllerHandle,\r
-  IN  EFI_DEVICE_PATH_PROTOCOL        *RemainingDevicePath\r
+  IN  EFI_DRIVER_BINDING_PROTOCOL  *This,\r
+  IN  EFI_HANDLE                   ControllerHandle,\r
+  IN  EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath\r
   );\r
 \r
 /**\r
@@ -607,10 +607,10 @@ ConSplitterAbsolutePointerDriverBindingStart (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterAbsolutePointerDriverBindingStop (\r
-  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,\r
-  IN  EFI_HANDLE                      ControllerHandle,\r
-  IN  UINTN                           NumberOfChildren,\r
-  IN  EFI_HANDLE                      *ChildHandleBuffer\r
+  IN  EFI_DRIVER_BINDING_PROTOCOL  *This,\r
+  IN  EFI_HANDLE                   ControllerHandle,\r
+  IN  UINTN                        NumberOfChildren,\r
+  IN  EFI_HANDLE                   *ChildHandleBuffer\r
   );\r
 \r
 /**\r
@@ -625,8 +625,8 @@ ConSplitterAbsolutePointerDriverBindingStop (
 **/\r
 EFI_STATUS\r
 ConSplitterAbsolutePointerAddDevice (\r
-  IN  TEXT_IN_SPLITTER_PRIVATE_DATA     *Private,\r
-  IN  EFI_ABSOLUTE_POINTER_PROTOCOL     *AbsolutePointer\r
+  IN  TEXT_IN_SPLITTER_PRIVATE_DATA  *Private,\r
+  IN  EFI_ABSOLUTE_POINTER_PROTOCOL  *AbsolutePointer\r
   );\r
 \r
 /**\r
@@ -641,15 +641,14 @@ ConSplitterAbsolutePointerAddDevice (
 **/\r
 EFI_STATUS\r
 ConSplitterAbsolutePointerDeleteDevice (\r
-  IN  TEXT_IN_SPLITTER_PRIVATE_DATA     *Private,\r
-  IN  EFI_ABSOLUTE_POINTER_PROTOCOL     *AbsolutePointer\r
+  IN  TEXT_IN_SPLITTER_PRIVATE_DATA  *Private,\r
+  IN  EFI_ABSOLUTE_POINTER_PROTOCOL  *AbsolutePointer\r
   );\r
 \r
 //\r
 // Absolute Pointer protocol interfaces\r
 //\r
 \r
-\r
 /**\r
   Resets the pointer device hardware.\r
 \r
@@ -664,11 +663,10 @@ ConSplitterAbsolutePointerDeleteDevice (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterAbsolutePointerReset (\r
-  IN EFI_ABSOLUTE_POINTER_PROTOCOL   *This,\r
-  IN BOOLEAN                         ExtendedVerification\r
+  IN EFI_ABSOLUTE_POINTER_PROTOCOL  *This,\r
+  IN BOOLEAN                        ExtendedVerification\r
   );\r
 \r
-\r
 /**\r
   Retrieves the current state of a pointer device.\r
 \r
@@ -705,8 +703,8 @@ ConSplitterAbsolutePointerGetState (
 VOID\r
 EFIAPI\r
 ConSplitterAbsolutePointerWaitForInput (\r
-  IN  EFI_EVENT                       Event,\r
-  IN  VOID                            *Context\r
+  IN  EFI_EVENT  Event,\r
+  IN  VOID       *Context\r
   );\r
 \r
 /**\r
@@ -756,7 +754,6 @@ ConSplitterComponentNameGetDriverName (
   OUT CHAR16                       **DriverName\r
   );\r
 \r
-\r
 /**\r
   Retrieves a Unicode string that is the user readable name of the controller\r
   that is being managed by a driver.\r
@@ -808,7 +805,7 @@ ConSplitterComponentNameGetDriverName (
                                 driver specified by This was returned in\r
                                 DriverName.\r
 \r
-  @retval EFI_INVALID_PARAMETER ControllerHandle is not a valid EFI_HANDLE.\r
+  @retval EFI_INVALID_PARAMETER ControllerHandle is NULL.\r
 \r
   @retval EFI_INVALID_PARAMETER ChildHandle is not NULL and it is not a valid\r
                                 EFI_HANDLE.\r
@@ -828,14 +825,13 @@ ConSplitterComponentNameGetDriverName (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterConInComponentNameGetControllerName (\r
-  IN  EFI_COMPONENT_NAME_PROTOCOL                     *This,\r
-  IN  EFI_HANDLE                                      ControllerHandle,\r
-  IN  EFI_HANDLE                                      ChildHandle        OPTIONAL,\r
-  IN  CHAR8                                           *Language,\r
-  OUT CHAR16                                          **ControllerName\r
+  IN  EFI_COMPONENT_NAME_PROTOCOL  *This,\r
+  IN  EFI_HANDLE                   ControllerHandle,\r
+  IN  EFI_HANDLE                   ChildHandle        OPTIONAL,\r
+  IN  CHAR8                        *Language,\r
+  OUT CHAR16                       **ControllerName\r
   );\r
 \r
-\r
 /**\r
   Retrieves a Unicode string that is the user readable name of the controller\r
   that is being managed by a driver.\r
@@ -887,7 +883,7 @@ ConSplitterConInComponentNameGetControllerName (
                                 driver specified by This was returned in\r
                                 DriverName.\r
 \r
-  @retval EFI_INVALID_PARAMETER ControllerHandle is not a valid EFI_HANDLE.\r
+  @retval EFI_INVALID_PARAMETER ControllerHandle is NULL.\r
 \r
   @retval EFI_INVALID_PARAMETER ChildHandle is not NULL and it is not a valid\r
                                 EFI_HANDLE.\r
@@ -907,11 +903,11 @@ ConSplitterConInComponentNameGetControllerName (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterSimplePointerComponentNameGetControllerName (\r
-  IN  EFI_COMPONENT_NAME_PROTOCOL                     *This,\r
-  IN  EFI_HANDLE                                      ControllerHandle,\r
-  IN  EFI_HANDLE                                      ChildHandle        OPTIONAL,\r
-  IN  CHAR8                                           *Language,\r
-  OUT CHAR16                                          **ControllerName\r
+  IN  EFI_COMPONENT_NAME_PROTOCOL  *This,\r
+  IN  EFI_HANDLE                   ControllerHandle,\r
+  IN  EFI_HANDLE                   ChildHandle        OPTIONAL,\r
+  IN  CHAR8                        *Language,\r
+  OUT CHAR16                       **ControllerName\r
   );\r
 \r
 /**\r
@@ -946,7 +942,7 @@ ConSplitterSimplePointerComponentNameGetControllerName (
   @retval EFI_SUCCESS            The Unicode string for the user readable name in\r
                                  the language specified by Language for the driver\r
                                  specified by This was returned in DriverName.\r
-  @retval EFI_INVALID_PARAMETER  ControllerHandle is not a valid EFI_HANDLE.\r
+  @retval EFI_INVALID_PARAMETER  ControllerHandle is NULL.\r
   @retval EFI_INVALID_PARAMETER  ChildHandle is not NULL and it is not a valid\r
                                  EFI_HANDLE.\r
   @retval EFI_INVALID_PARAMETER  Language is NULL.\r
@@ -961,11 +957,11 @@ ConSplitterSimplePointerComponentNameGetControllerName (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterAbsolutePointerComponentNameGetControllerName (\r
-  IN  EFI_COMPONENT_NAME_PROTOCOL                    *This,\r
-  IN  EFI_HANDLE                                      ControllerHandle,\r
-  IN  EFI_HANDLE                                      ChildHandle        OPTIONAL,\r
-  IN  CHAR8                                           *Language,\r
-  OUT CHAR16                                          **ControllerName\r
+  IN  EFI_COMPONENT_NAME_PROTOCOL  *This,\r
+  IN  EFI_HANDLE                   ControllerHandle,\r
+  IN  EFI_HANDLE                   ChildHandle        OPTIONAL,\r
+  IN  CHAR8                        *Language,\r
+  OUT CHAR16                       **ControllerName\r
   );\r
 \r
 /**\r
@@ -1019,7 +1015,7 @@ ConSplitterAbsolutePointerComponentNameGetControllerName (
                                 driver specified by This was returned in\r
                                 DriverName.\r
 \r
-  @retval EFI_INVALID_PARAMETER ControllerHandle is not a valid EFI_HANDLE.\r
+  @retval EFI_INVALID_PARAMETER ControllerHandle is NULL.\r
 \r
   @retval EFI_INVALID_PARAMETER ChildHandle is not NULL and it is not a valid\r
                                 EFI_HANDLE.\r
@@ -1039,14 +1035,13 @@ ConSplitterAbsolutePointerComponentNameGetControllerName (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterConOutComponentNameGetControllerName (\r
-  IN  EFI_COMPONENT_NAME_PROTOCOL                     *This,\r
-  IN  EFI_HANDLE                                      ControllerHandle,\r
-  IN  EFI_HANDLE                                      ChildHandle        OPTIONAL,\r
-  IN  CHAR8                                           *Language,\r
-  OUT CHAR16                                          **ControllerName\r
+  IN  EFI_COMPONENT_NAME_PROTOCOL  *This,\r
+  IN  EFI_HANDLE                   ControllerHandle,\r
+  IN  EFI_HANDLE                   ChildHandle        OPTIONAL,\r
+  IN  CHAR8                        *Language,\r
+  OUT CHAR16                       **ControllerName\r
   );\r
 \r
-\r
 /**\r
   Retrieves a Unicode string that is the user readable name of the controller\r
   that is being managed by a driver.\r
@@ -1098,7 +1093,7 @@ ConSplitterConOutComponentNameGetControllerName (
                                 driver specified by This was returned in\r
                                 DriverName.\r
 \r
-  @retval EFI_INVALID_PARAMETER ControllerHandle is not a valid EFI_HANDLE.\r
+  @retval EFI_INVALID_PARAMETER ControllerHandle is NULL.\r
 \r
   @retval EFI_INVALID_PARAMETER ChildHandle is not NULL and it is not a valid\r
                                 EFI_HANDLE.\r
@@ -1118,14 +1113,13 @@ ConSplitterConOutComponentNameGetControllerName (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterStdErrComponentNameGetControllerName (\r
-  IN  EFI_COMPONENT_NAME_PROTOCOL                     *This,\r
-  IN  EFI_HANDLE                                      ControllerHandle,\r
-  IN  EFI_HANDLE                                      ChildHandle        OPTIONAL,\r
-  IN  CHAR8                                           *Language,\r
-  OUT CHAR16                                          **ControllerName\r
+  IN  EFI_COMPONENT_NAME_PROTOCOL  *This,\r
+  IN  EFI_HANDLE                   ControllerHandle,\r
+  IN  EFI_HANDLE                   ChildHandle        OPTIONAL,\r
+  IN  CHAR8                        *Language,\r
+  OUT CHAR16                       **ControllerName\r
   );\r
 \r
-\r
 //\r
 // TextIn Constructor/Destructor functions\r
 //\r
@@ -1178,8 +1172,8 @@ ConSplitterTextInDeleteDevice (
 **/\r
 EFI_STATUS\r
 ConSplitterSimplePointerAddDevice (\r
-  IN  TEXT_IN_SPLITTER_PRIVATE_DATA   *Private,\r
-  IN  EFI_SIMPLE_POINTER_PROTOCOL     *SimplePointer\r
+  IN  TEXT_IN_SPLITTER_PRIVATE_DATA  *Private,\r
+  IN  EFI_SIMPLE_POINTER_PROTOCOL    *SimplePointer\r
   );\r
 \r
 /**\r
@@ -1194,8 +1188,8 @@ ConSplitterSimplePointerAddDevice (
 **/\r
 EFI_STATUS\r
 ConSplitterSimplePointerDeleteDevice (\r
-  IN  TEXT_IN_SPLITTER_PRIVATE_DATA   *Private,\r
-  IN  EFI_SIMPLE_POINTER_PROTOCOL     *SimplePointer\r
+  IN  TEXT_IN_SPLITTER_PRIVATE_DATA  *Private,\r
+  IN  EFI_SIMPLE_POINTER_PROTOCOL    *SimplePointer\r
   );\r
 \r
 //\r
@@ -1216,10 +1210,10 @@ ConSplitterSimplePointerDeleteDevice (
 **/\r
 EFI_STATUS\r
 ConSplitterTextOutAddDevice (\r
-  IN  TEXT_OUT_SPLITTER_PRIVATE_DATA     *Private,\r
-  IN  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL    *TextOut,\r
-  IN  EFI_GRAPHICS_OUTPUT_PROTOCOL       *GraphicsOutput,\r
-  IN  EFI_UGA_DRAW_PROTOCOL              *UgaDraw\r
+  IN  TEXT_OUT_SPLITTER_PRIVATE_DATA   *Private,\r
+  IN  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL  *TextOut,\r
+  IN  EFI_GRAPHICS_OUTPUT_PROTOCOL     *GraphicsOutput,\r
+  IN  EFI_UGA_DRAW_PROTOCOL            *UgaDraw\r
   );\r
 \r
 /**\r
@@ -1234,8 +1228,8 @@ ConSplitterTextOutAddDevice (
 **/\r
 EFI_STATUS\r
 ConSplitterTextOutDeleteDevice (\r
-  IN  TEXT_OUT_SPLITTER_PRIVATE_DATA     *Private,\r
-  IN  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL    *TextOut\r
+  IN  TEXT_OUT_SPLITTER_PRIVATE_DATA   *Private,\r
+  IN  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL  *TextOut\r
   );\r
 \r
 //\r
@@ -1292,8 +1286,8 @@ ConSplitterTextInReadKeyStroke (
 **/\r
 EFI_STATUS\r
 ConSplitterTextInExAddDevice (\r
-  IN  TEXT_IN_SPLITTER_PRIVATE_DATA         *Private,\r
-  IN  EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL     *TextInEx\r
+  IN  TEXT_IN_SPLITTER_PRIVATE_DATA      *Private,\r
+  IN  EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL  *TextInEx\r
   );\r
 \r
 /**\r
@@ -1308,8 +1302,8 @@ ConSplitterTextInExAddDevice (
 **/\r
 EFI_STATUS\r
 ConSplitterTextInExDeleteDevice (\r
-  IN  TEXT_IN_SPLITTER_PRIVATE_DATA         *Private,\r
-  IN  EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL     *TextInEx\r
+  IN  TEXT_IN_SPLITTER_PRIVATE_DATA      *Private,\r
+  IN  EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL  *TextInEx\r
   );\r
 \r
 //\r
@@ -1334,7 +1328,6 @@ ConSplitterTextInResetEx (
   IN BOOLEAN                            ExtendedVerification\r
   );\r
 \r
-\r
 /**\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
@@ -1354,11 +1347,10 @@ ConSplitterTextInResetEx (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterTextInReadKeyStrokeEx (\r
-  IN  EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *This,\r
-  OUT EFI_KEY_DATA                      *KeyData\r
+  IN  EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL  *This,\r
+  OUT EFI_KEY_DATA                       *KeyData\r
   );\r
 \r
-\r
 /**\r
   Set certain state for the input device.\r
 \r
@@ -1381,16 +1373,18 @@ ConSplitterTextInSetState (
   IN EFI_KEY_TOGGLE_STATE               *KeyToggleState\r
   );\r
 \r
-\r
 /**\r
   Register a notification function for a particular keystroke for the input device.\r
 \r
   @param  This                     Protocol instance pointer.\r
-  @param  KeyData                  A pointer to a buffer that is filled in with the\r
-                                   keystroke information data for the key that was\r
-                                   pressed.\r
+  @param  KeyData                  A pointer to a buffer that is filled in with\r
+                                   the keystroke information for the key that was\r
+                                   pressed. If KeyData.Key, KeyData.KeyState.KeyToggleState\r
+                                   and KeyData.KeyState.KeyShiftState are 0, then any incomplete\r
+                                   keystroke will trigger a notification of the KeyNotificationFunction.\r
   @param  KeyNotificationFunction  Points to the function to be called when the key\r
-                                   sequence is typed specified by KeyData.\r
+                                   sequence is typed specified by KeyData. This notification function\r
+                                   should be called at <=TPL_CALLBACK.\r
   @param  NotifyHandle             Points to the unique handle assigned to the\r
                                    registered notification.\r
 \r
@@ -1407,10 +1401,9 @@ ConSplitterTextInRegisterKeyNotify (
   IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL  *This,\r
   IN EFI_KEY_DATA                       *KeyData,\r
   IN EFI_KEY_NOTIFY_FUNCTION            KeyNotificationFunction,\r
-  OUT EFI_HANDLE                        *NotifyHandle\r
+  OUT VOID                              **NotifyHandle\r
   );\r
 \r
-\r
 /**\r
   Remove a registered notification function from a particular keystroke.\r
 \r
@@ -1428,7 +1421,7 @@ EFI_STATUS
 EFIAPI\r
 ConSplitterTextInUnregisterKeyNotify (\r
   IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL  *This,\r
-  IN EFI_HANDLE                         NotificationHandle\r
+  IN VOID                               *NotificationHandle\r
   );\r
 \r
 /**\r
@@ -1445,11 +1438,10 @@ ConSplitterTextInUnregisterKeyNotify (
 VOID\r
 EFIAPI\r
 ConSplitterTextInWaitForKey (\r
-  IN  EFI_EVENT                       Event,\r
-  IN  VOID                            *Context\r
+  IN  EFI_EVENT  Event,\r
+  IN  VOID       *Context\r
   );\r
 \r
-\r
 /**\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
@@ -1466,8 +1458,8 @@ ConSplitterTextInWaitForKey (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterTextInPrivateReadKeyStroke (\r
-  IN  TEXT_IN_SPLITTER_PRIVATE_DATA   *Private,\r
-  OUT EFI_INPUT_KEY                   *Key\r
+  IN  TEXT_IN_SPLITTER_PRIVATE_DATA  *Private,\r
+  OUT EFI_INPUT_KEY                  *Key\r
   );\r
 \r
 /**\r
@@ -1484,8 +1476,8 @@ ConSplitterTextInPrivateReadKeyStroke (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterSimplePointerReset (\r
-  IN  EFI_SIMPLE_POINTER_PROTOCOL     *This,\r
-  IN  BOOLEAN                         ExtendedVerification\r
+  IN  EFI_SIMPLE_POINTER_PROTOCOL  *This,\r
+  IN  BOOLEAN                      ExtendedVerification\r
   );\r
 \r
 /**\r
@@ -1504,8 +1496,8 @@ ConSplitterSimplePointerReset (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterSimplePointerGetState (\r
-  IN  EFI_SIMPLE_POINTER_PROTOCOL     *This,\r
-  IN OUT EFI_SIMPLE_POINTER_STATE     *State\r
+  IN  EFI_SIMPLE_POINTER_PROTOCOL  *This,\r
+  IN OUT EFI_SIMPLE_POINTER_STATE  *State\r
   );\r
 \r
 /**\r
@@ -1521,8 +1513,8 @@ ConSplitterSimplePointerGetState (
 VOID\r
 EFIAPI\r
 ConSplitterSimplePointerWaitForInput (\r
-  IN  EFI_EVENT                       Event,\r
-  IN  VOID                            *Context\r
+  IN  EFI_EVENT  Event,\r
+  IN  VOID       *Context\r
   );\r
 \r
 //\r
@@ -1544,8 +1536,8 @@ ConSplitterSimplePointerWaitForInput (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterTextOutReset (\r
-  IN  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL    *This,\r
-  IN  BOOLEAN                            ExtendedVerification\r
+  IN  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL  *This,\r
+  IN  BOOLEAN                          ExtendedVerification\r
   );\r
 \r
 /**\r
@@ -1570,8 +1562,8 @@ ConSplitterTextOutReset (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterTextOutOutputString (\r
-  IN  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL    *This,\r
-  IN  CHAR16                             *WString\r
+  IN  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL  *This,\r
+  IN  CHAR16                           *WString\r
   );\r
 \r
 /**\r
@@ -1592,8 +1584,8 @@ ConSplitterTextOutOutputString (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterTextOutTestString (\r
-  IN  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL    *This,\r
-  IN  CHAR16                             *WString\r
+  IN  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL  *This,\r
+  IN  CHAR16                           *WString\r
   );\r
 \r
 /**\r
@@ -1616,10 +1608,10 @@ ConSplitterTextOutTestString (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterTextOutQueryMode (\r
-  IN  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL    *This,\r
-  IN  UINTN                              ModeNumber,\r
-  OUT UINTN                              *Columns,\r
-  OUT UINTN                              *Rows\r
+  IN  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL  *This,\r
+  IN  UINTN                            ModeNumber,\r
+  OUT UINTN                            *Columns,\r
+  OUT UINTN                            *Rows\r
   );\r
 \r
 /**\r
@@ -1637,8 +1629,8 @@ ConSplitterTextOutQueryMode (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterTextOutSetMode (\r
-  IN  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL    *This,\r
-  IN  UINTN                              ModeNumber\r
+  IN  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL  *This,\r
+  IN  UINTN                            ModeNumber\r
   );\r
 \r
 /**\r
@@ -1661,8 +1653,8 @@ ConSplitterTextOutSetMode (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterTextOutSetAttribute (\r
-  IN  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL    *This,\r
-  IN  UINTN                              Attribute\r
+  IN  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL  *This,\r
+  IN  UINTN                            Attribute\r
   );\r
 \r
 /**\r
@@ -1680,7 +1672,7 @@ ConSplitterTextOutSetAttribute (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterTextOutClearScreen (\r
-  IN  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL    *This\r
+  IN  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL  *This\r
   );\r
 \r
 /**\r
@@ -1705,12 +1697,11 @@ ConSplitterTextOutClearScreen (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterTextOutSetCursorPosition (\r
-  IN  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL    *This,\r
-  IN  UINTN                              Column,\r
-  IN  UINTN                              Row\r
+  IN  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL  *This,\r
+  IN  UINTN                            Column,\r
+  IN  UINTN                            Row\r
   );\r
 \r
-\r
 /**\r
   Makes the cursor visible or invisible\r
 \r
@@ -1728,17 +1719,17 @@ ConSplitterTextOutSetCursorPosition (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterTextOutEnableCursor (\r
-  IN  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL    *This,\r
-  IN  BOOLEAN                            Visible\r
+  IN  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL  *This,\r
+  IN  BOOLEAN                          Visible\r
   );\r
 \r
 /**\r
-  Take the passed in Buffer of size SizeOfCount and grow the buffer\r
-  by MAX (CONSOLE_SPLITTER_CONSOLES_ALLOC_UNIT, MaxGrow) * SizeOfCount\r
-  bytes. Copy the current data in Buffer to the new version of Buffer\r
-  and free the old version of buffer.\r
+  Take the passed in Buffer of size ElementSize and grow the buffer\r
+  by CONSOLE_SPLITTER_ALLOC_UNIT * ElementSize bytes.\r
+  Copy the current data in Buffer to the new version of Buffer and\r
+  free the old version of buffer.\r
 \r
-  @param  SizeOfCount              Size of element in array.\r
+  @param  ElementSize              Size of element in array.\r
   @param  Count                    Current number of elements in array.\r
   @param  Buffer                   Bigger version of passed in Buffer with all the\r
                                    data.\r
@@ -1749,9 +1740,9 @@ ConSplitterTextOutEnableCursor (
 **/\r
 EFI_STATUS\r
 ConSplitterGrowBuffer (\r
-  IN      UINTN                       SizeOfCount,\r
-  IN OUT  UINTN                       *Count,\r
-  IN OUT  VOID                        **Buffer\r
+  IN      UINTN  ElementSize,\r
+  IN OUT  UINTN  *Count,\r
+  IN OUT  VOID   **Buffer\r
   );\r
 \r
 /**\r
@@ -1766,7 +1757,6 @@ ConSplitterGrowBuffer (
   @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
@@ -1796,8 +1786,8 @@ ConSplitterGraphicsOutputQueryMode (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterGraphicsOutputSetMode (\r
-  IN  EFI_GRAPHICS_OUTPUT_PROTOCOL This,\r
-  IN  UINT32                       ModeNumber\r
+  IN  EFI_GRAPHICS_OUTPUT_PROTOCOL  *This,\r
+  IN  UINT32                        ModeNumber\r
   );\r
 \r
 /**\r
@@ -1842,26 +1832,25 @@ ConSplitterGraphicsOutputSetMode (
 \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
+  @retval EFI_DEVICE_ERROR        A hardware error occurred writting to the video\r
                                   buffer.\r
 \r
 **/\r
 EFI_STATUS\r
 EFIAPI\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
-  IN  UINTN                                         SourceX,\r
-  IN  UINTN                                         SourceY,\r
-  IN  UINTN                                         DestinationX,\r
-  IN  UINTN                                         DestinationY,\r
-  IN  UINTN                                         Width,\r
-  IN  UINTN                                         Height,\r
-  IN  UINTN                                         Delta         OPTIONAL\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
+  IN  UINTN                              SourceX,\r
+  IN  UINTN                              SourceY,\r
+  IN  UINTN                              DestinationX,\r
+  IN  UINTN                              DestinationY,\r
+  IN  UINTN                              Width,\r
+  IN  UINTN                              Height,\r
+  IN  UINTN                              Delta         OPTIONAL\r
   );\r
 \r
-\r
 /**\r
   Return the current video mode information.\r
 \r
@@ -1879,11 +1868,11 @@ ConSplitterGraphicsOutputBlt (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterUgaDrawGetMode (\r
-  IN  EFI_UGA_DRAW_PROTOCOL           *This,\r
-  OUT UINT32                          *HorizontalResolution,\r
-  OUT UINT32                          *VerticalResolution,\r
-  OUT UINT32                          *ColorDepth,\r
-  OUT UINT32                          *RefreshRate\r
+  IN  EFI_UGA_DRAW_PROTOCOL  *This,\r
+  OUT UINT32                 *HorizontalResolution,\r
+  OUT UINT32                 *VerticalResolution,\r
+  OUT UINT32                 *ColorDepth,\r
+  OUT UINT32                 *RefreshRate\r
   );\r
 \r
 /**\r
@@ -1903,11 +1892,11 @@ ConSplitterUgaDrawGetMode (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterUgaDrawSetMode (\r
-  IN  EFI_UGA_DRAW_PROTOCOL           *This,\r
-  IN UINT32                           HorizontalResolution,\r
-  IN UINT32                           VerticalResolution,\r
-  IN UINT32                           ColorDepth,\r
-  IN UINT32                           RefreshRate\r
+  IN  EFI_UGA_DRAW_PROTOCOL  *This,\r
+  IN UINT32                  HorizontalResolution,\r
+  IN UINT32                  VerticalResolution,\r
+  IN UINT32                  ColorDepth,\r
+  IN UINT32                  RefreshRate\r
   );\r
 \r
 /**\r
@@ -1956,22 +1945,22 @@ ConSplitterUgaDrawSetMode (
 \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
+  @retval EFI_DEVICE_ERROR       A hardware error occurred writting to the video buffer.\r
 \r
 **/\r
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterUgaDrawBlt (\r
-  IN  EFI_UGA_DRAW_PROTOCOL                         *This,\r
-  IN  EFI_UGA_PIXEL                                 *BltBuffer, OPTIONAL\r
-  IN  EFI_UGA_BLT_OPERATION                         BltOperation,\r
-  IN  UINTN                                         SourceX,\r
-  IN  UINTN                                         SourceY,\r
-  IN  UINTN                                         DestinationX,\r
-  IN  UINTN                                         DestinationY,\r
-  IN  UINTN                                         Width,\r
-  IN  UINTN                                         Height,\r
-  IN  UINTN                                         Delta         OPTIONAL\r
+  IN  EFI_UGA_DRAW_PROTOCOL  *This,\r
+  IN  EFI_UGA_PIXEL          *BltBuffer  OPTIONAL,\r
+  IN  EFI_UGA_BLT_OPERATION  BltOperation,\r
+  IN  UINTN                  SourceX,\r
+  IN  UINTN                  SourceY,\r
+  IN  UINTN                  DestinationX,\r
+  IN  UINTN                  DestinationY,\r
+  IN  UINTN                  Width,\r
+  IN  UINTN                  Height,\r
+  IN  UINTN                  Delta         OPTIONAL\r
   );\r
 \r
 /**\r
@@ -1987,5 +1976,4 @@ TextOutSetMode (
   IN  UINTN                           ModeNumber\r
   );\r
 \r
-\r
 #endif\r