/* Reset the input device and optionally run diagnostics */
EFI_STATUS EFIAPI ConSplitterTextInResetEx(IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *This, IN BOOLEAN ExtendedVerification)
/* Reset the input device and optionally run diagnostics */
EFI_STATUS EFIAPI ConSplitterTextInResetEx(IN EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *This, IN BOOLEAN ExtendedVerification)
{
  EFI_STATUS                     Status;
  EFI_STATUS                     ReturnStatus;
  TEXT_IN_SPLITTER_PRIVATE_DATA  *Private;
  UINTN                          Index;
  Private = TEXT_IN_EX_SPLITTER_PRIVATE_DATA_FROM_THIS (This);
  Private->KeyEventSignalState = FALSE;
  for (Index = 0, ReturnStatus = EFI_SUCCESS; Index < Private->CurrentNumberOfExConsoles; Index++) {
    Status = Private->TextInExList[Index]->Reset (
                                             Private->TextInExList[Index],
                                             ExtendedVerification
                                             );
    if (EFI_ERROR (Status)) {
      ReturnStatus = Status;
    }
  }
  if (!EFI_ERROR (ReturnStatus)) {
    ToggleStateSyncReInitialization (Private);
    Private->CurrentNumberOfKeys = 0;
  }
  return ReturnStatus;
}