]> git.proxmox.com Git - mirror_edk2.git/blobdiff - UnixPkg/UnixBlockIoDxe/DriverDiagnostics.c
UnixPkg: Remove UnixPkg files (It is replaced by EmulatorPkg)
[mirror_edk2.git] / UnixPkg / UnixBlockIoDxe / DriverDiagnostics.c
diff --git a/UnixPkg/UnixBlockIoDxe/DriverDiagnostics.c b/UnixPkg/UnixBlockIoDxe/DriverDiagnostics.c
deleted file mode 100644 (file)
index 69ba61d..0000000
+++ /dev/null
@@ -1,187 +0,0 @@
-/*++\r
-\r
-Copyright (c) 2004 - 2005, 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
-\r
-Module Name:\r
-\r
-  DriverDiagnostics.c\r
-\r
-Abstract:\r
-\r
---*/\r
-\r
-#include "UnixBlockIo.h"\r
-\r
-//\r
-// EFI Driver Diagnostics Functions\r
-//\r
-EFI_STATUS\r
-EFIAPI\r
-UnixBlockIoDriverDiagnosticsRunDiagnostics (\r
-  IN  EFI_DRIVER_DIAGNOSTICS_PROTOCOL               *This,\r
-  IN  EFI_HANDLE                                    ControllerHandle,\r
-  IN  EFI_HANDLE                                    ChildHandle  OPTIONAL,\r
-  IN  EFI_DRIVER_DIAGNOSTIC_TYPE                    DiagnosticType,\r
-  IN  CHAR8                                         *Language,\r
-  OUT EFI_GUID                                      **ErrorType,\r
-  OUT UINTN                                         *BufferSize,\r
-  OUT CHAR16                                        **Buffer\r
-  );\r
-\r
-//\r
-// EFI Driver Diagnostics Protocol\r
-//\r
-EFI_DRIVER_DIAGNOSTICS_PROTOCOL gUnixBlockIoDriverDiagnostics = {\r
-  UnixBlockIoDriverDiagnosticsRunDiagnostics,\r
-  LANGUAGESUPPORTED\r
-};\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-UnixBlockIoDriverDiagnosticsRunDiagnostics (\r
-  IN  EFI_DRIVER_DIAGNOSTICS_PROTOCOL               *This,\r
-  IN  EFI_HANDLE                                    ControllerHandle,\r
-  IN  EFI_HANDLE                                    ChildHandle  OPTIONAL,\r
-  IN  EFI_DRIVER_DIAGNOSTIC_TYPE                    DiagnosticType,\r
-  IN  CHAR8                                         *Language,\r
-  OUT EFI_GUID                                      **ErrorType,\r
-  OUT UINTN                                         *BufferSize,\r
-  OUT CHAR16                                        **Buffer\r
-  )\r
-/*++\r
-\r
-  Routine Description:\r
-    Runs diagnostics on a controller.\r
-\r
-  Arguments:\r
-    This             - A pointer to the EFI_DRIVER_DIAGNOSTICS_PROTOCOL instance.\r
-    ControllerHandle - The handle of the controller to run diagnostics on.\r
-    ChildHandle      - The handle of the child controller to run diagnostics on  \r
-                       This is an optional parameter that may be NULL.  It will \r
-                       be NULL for device drivers.  It will also be NULL for a \r
-                       bus drivers that wish to run diagnostics on the bus \r
-                       controller.  It will not be NULL for a bus driver that \r
-                       wishes to run diagnostics on one of its child controllers.\r
-    DiagnosticType   - Indicates type of diagnostics to perform on the controller \r
-                       specified by ControllerHandle and ChildHandle.   See \r
-                       "Related Definitions" for the list of supported types.\r
-    Language         - A pointer to a three character ISO 639-2 language \r
-                       identifier.  This is the language in which the optional \r
-                       error message should be returned in Buffer, and it must \r
-                       match one of the languages specified in SupportedLanguages.\r
-                       The number of languages supported by a driver is up to \r
-                       the driver writer.  \r
-    ErrorType        - A GUID that defines the format of the data returned in \r
-                       Buffer.  \r
-    BufferSize       - The size, in bytes, of the data returned in Buffer.  \r
-    Buffer           - A buffer that contains a Null-terminated Unicode string \r
-                       plus some additional data whose format is defined by \r
-                       ErrorType.  Buffer is allocated by this function with \r
-                       AllocatePool(), and it is the caller's responsibility \r
-                       to free it with a call to FreePool().  \r
-\r
-  Returns:\r
-    EFI_SUCCESS           - The controller specified by ControllerHandle and \r
-                            ChildHandle passed the diagnostic.\r
-    EFI_INVALID_PARAMETER - ControllerHandle is not a valid EFI_HANDLE.\r
-    EFI_INVALID_PARAMETER - ChildHandle is not NULL and it is not a valid \r
-                            EFI_HANDLE.\r
-    EFI_INVALID_PARAMETER - Language is NULL.\r
-    EFI_INVALID_PARAMETER - ErrorType is NULL.\r
-    EFI_INVALID_PARAMETER - BufferType is NULL.\r
-    EFI_INVALID_PARAMETER - Buffer is NULL.\r
-    EFI_UNSUPPORTED       - The driver specified by This does not support \r
-                            running diagnostics for the controller specified \r
-                            by ControllerHandle and ChildHandle.\r
-    EFI_UNSUPPORTED       - The driver specified by This does not support the \r
-                            type of diagnostic specified by DiagnosticType.\r
-    EFI_UNSUPPORTED       - The driver specified by This does not support the \r
-                            language specified by Language.\r
-    EFI_OUT_OF_RESOURCES  - There are not enough resources available to complete\r
-                            the diagnostics.\r
-    EFI_OUT_OF_RESOURCES  - There are not enough resources available to return\r
-                            the status information in ErrorType, BufferSize, \r
-                            and Buffer.\r
-    EFI_DEVICE_ERROR      - The controller specified by ControllerHandle and \r
-                            ChildHandle did not pass the diagnostic.\r
-\r
---*/\r
-{\r
-  EFI_STATUS            Status;\r
-  EFI_BLOCK_IO_PROTOCOL *BlockIo;\r
-  CHAR8                 *SupportedLanguage;\r
-\r
-  if (Language         == NULL ||\r
-      ErrorType        == NULL ||\r
-      Buffer           == NULL ||\r
-      ControllerHandle == NULL ||\r
-      BufferSize       == NULL) {\r
-\r
-    return EFI_INVALID_PARAMETER;\r
-  }\r
-\r
-  SupportedLanguage = This->SupportedLanguages;\r
-\r
-  Status            = EFI_UNSUPPORTED;\r
-  while (*SupportedLanguage != 0) {\r
-    if (AsciiStrnCmp (Language, SupportedLanguage, 3)) {\r
-      Status = EFI_SUCCESS;\r
-      break;\r
-    }\r
-\r
-    SupportedLanguage += 3;\r
-  }\r
-\r
-  if (EFI_ERROR (Status)) {\r
-    return EFI_UNSUPPORTED;\r
-  }\r
-\r
-  *ErrorType  = NULL;\r
-  *BufferSize = 0;\r
-  if (DiagnosticType != EfiDriverDiagnosticTypeStandard) {\r
-    *ErrorType  = &gEfiBlockIoProtocolGuid;\r
-    *BufferSize = 0x60;\r
-    gBS->AllocatePool (EfiBootServicesData, (UINTN) (*BufferSize),\r
-           (void *)Buffer);\r
-    CopyMem (*Buffer, L"Unix Block I/O Driver Diagnostics Failed\n", *BufferSize);\r
-    return EFI_DEVICE_ERROR;\r
-  }\r
-\r
-  //\r
-  // Validate controller handle\r
-  //\r
-  Status = gBS->OpenProtocol (\r
-                  ControllerHandle,\r
-                  &gEfiUnixIoProtocolGuid,\r
-                  (void *)&BlockIo,\r
-                  gUnixBlockIoDriverBinding.DriverBindingHandle,\r
-                  ControllerHandle,\r
-                  EFI_OPEN_PROTOCOL_BY_DRIVER\r
-                  );\r
-\r
-  if (!EFI_ERROR (Status)) {\r
-    gBS->CloseProtocol (\r
-          ControllerHandle,\r
-          &gEfiUnixIoProtocolGuid,\r
-          gUnixBlockIoDriverBinding.DriverBindingHandle,\r
-          ControllerHandle\r
-          );\r
-\r
-    return EFI_UNSUPPORTED;\r
-  }\r
-\r
-  if (Status == EFI_UNSUPPORTED) {\r
-    return Status;\r
-  } else if (Status != EFI_ALREADY_STARTED) {\r
-    return EFI_INVALID_PARAMETER;\r
-  }\r
-\r
-  return EFI_SUCCESS;\r
-}\r