]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Include/Protocol/DriverDiagnostics2.h
MdePkg FirmwareManagement.h: Fix typo EFI_SECURITY_VIOLATIO
[mirror_edk2.git] / MdePkg / Include / Protocol / DriverDiagnostics2.h
index 936be8275d292de98402a660750de3af8180cb2f..ab6323bb50a445c540325880dea18cd1eb9f65f8 100644 (file)
@@ -1,8 +1,8 @@
 /** @file\r
-  EFI Driver Diagnostics Protocol\r
+  UEFI Driver Diagnostics2 Protocol\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
-  All rights reserved. This program and the accompanying materials                          \r
+  Copyright (c) 2006 - 2011, 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
@@ -27,23 +27,25 @@ typedef struct _EFI_DRIVER_DIAGNOSTICS2_PROTOCOL  EFI_DRIVER_DIAGNOSTICS2_PROTOC
 /**\r
   Runs diagnostics on a controller.\r
 \r
-  @param  This             A pointer to the EFI_DRIVER_DIAGNOSTICS_PROTOCOL instance.\r
+  @param  This             A pointer to the EFI_DRIVER_DIAGNOSTICS2_PROTOCOL instance.\r
   @param  ControllerHandle The handle of the controller to run diagnostics on.\r
   @param  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
+                           be NULL for device drivers.  It will also be NULL for \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
-  @param  DiagnosticType   Indicates type of diagnostics to perform on the controller\r
+  @param  DiagnosticType   Indicates the 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
-  @param  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
+  @param  Language         A pointer to a Null-terminated ASCII string\r
+                           array indicating the language. This is the\r
+                           language of the driver name that the caller\r
+                           is requesting, and it must match one of the\r
+                           languages specified in SupportedLanguages.\r
+                           The number of languages supported by a\r
+                           driver is up to the driver writer. Language\r
+                           is specified in RFC 4646 language code format.\r
   @param  ErrorType        A GUID that defines the format of the data returned in Buffer.\r
   @param  BufferSize       The size, in bytes, of the data returned in Buffer.\r
   @param  Buffer           A buffer that contains a Null-terminated Unicode string\r
@@ -54,7 +56,10 @@ typedef struct _EFI_DRIVER_DIAGNOSTICS2_PROTOCOL  EFI_DRIVER_DIAGNOSTICS2_PROTOC
 \r
   @retval EFI_SUCCESS           The controller specified by ControllerHandle and\r
                                 ChildHandle passed the diagnostic.\r
-  @retval EFI_INVALID_PARAMETER ControllerHandle is not a valid EFI_HANDLE.\r
+  @retval EFI_ACCESS_DENIED     The request for initiating diagnostics was unable\r
+                                to be complete due to some underlying hardware or\r
+                                software state.\r
+  @retval EFI_INVALID_PARAMETER ControllerHandle is NULL.\r
   @retval EFI_INVALID_PARAMETER ChildHandle is not NULL and it is not a valid EFI_HANDLE.\r
   @retval EFI_INVALID_PARAMETER Language is NULL.\r
   @retval EFI_INVALID_PARAMETER ErrorType is NULL.\r
@@ -78,7 +83,7 @@ typedef struct _EFI_DRIVER_DIAGNOSTICS2_PROTOCOL  EFI_DRIVER_DIAGNOSTICS2_PROTOC
 **/\r
 typedef\r
 EFI_STATUS\r
-(EFIAPI *EFI_DRIVER_DIAGNOSTICS2_RUN_DIAGNOSTICS) (\r
+(EFIAPI *EFI_DRIVER_DIAGNOSTICS2_RUN_DIAGNOSTICS)(\r
   IN EFI_DRIVER_DIAGNOSTICS2_PROTOCOL                       *This,\r
   IN  EFI_HANDLE                                            ControllerHandle,\r
   IN  EFI_HANDLE                                            ChildHandle  OPTIONAL,\r
@@ -89,26 +94,15 @@ EFI_STATUS
   OUT CHAR16                                                **Buffer\r
   );\r
 \r
-\r
-//\r
-//\r
-\r
-/**\r
-  Interface structure for the Driver Diagnostics Protocol.\r
-\r
-  @par Protocol Description:\r
-  Used to perform diagnostics on a controller that an EFI Driver is managing.\r
-\r
-  @param RunDiagnostics      Runs diagnostics on a controller.\r
-  @param SupportedLanguages  A Null-terminated ASCII string that\r
-                             contains one or more RFC 3066\r
-                             language codes.  This is the list\r
-                             of language codes that this\r
-                             protocol supports.\r
-\r
-**/\r
+///\r
+/// Used to perform diagnostics on a controller that an EFI Driver is managing.\r
+///\r
 struct _EFI_DRIVER_DIAGNOSTICS2_PROTOCOL {\r
   EFI_DRIVER_DIAGNOSTICS2_RUN_DIAGNOSTICS RunDiagnostics;\r
+  ///\r
+  /// A Null-terminated ASCII string that contains one or more RFC 4646\r
+  /// language codes.  This is the list of language codes that this protocol supports.  \r
+  ///    \r
   CHAR8                                   *SupportedLanguages;\r
 };\r
 \r