/** @file\r
EFI Driver Diagnostics Protocol\r
\r
- Copyright (c) 2006, Intel Corporation \r
- All rights reserved. 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 - 2013, Intel Corporation. All rights reserved.<BR>\r
+This program and the accompanying materials are licensed and made available under \r
+the terms and conditions of the BSD License that accompanies this distribution. \r
+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
**/\r
\r
#ifndef __EFI_DRIVER_DIAGNOSTICS_H__\r
#define __EFI_DRIVER_DIAGNOSTICS_H__\r
\r
-//\r
-// Global ID for the Driver Diagnostics Protocol as defined in EFI 1.10.\r
-//\r
+///\r
+/// The global ID for the Driver Diagnostics Protocol as defined in EFI 1.1.\r
+///\r
#define EFI_DRIVER_DIAGNOSTICS_PROTOCOL_GUID \\r
{ \\r
0x0784924f, 0xe296, 0x11d4, {0x9a, 0x49, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d } \\r
typedef struct _EFI_DRIVER_DIAGNOSTICS_PROTOCOL EFI_DRIVER_DIAGNOSTICS_PROTOCOL;\r
\r
typedef enum {\r
+ ///\r
+ /// Performs standard diagnostics on the controller.\r
+ ///\r
EfiDriverDiagnosticTypeStandard = 0,\r
+ ///\r
+ /// This is an optional diagnostic type that performs diagnostics on the controller that may\r
+ /// take an extended amount of time to execute.\r
+ ///\r
EfiDriverDiagnosticTypeExtended = 1,\r
+ ///\r
+ /// This is an optional diagnostic type that performs diagnostics on the controller that are\r
+ /// suitable for a manufacturing and test environment.\r
+ ///\r
EfiDriverDiagnosticTypeManufacturing= 2,\r
+ ///\r
+ /// This is an optional diagnostic type that would only be used in the situation where an \r
+ /// EFI_NOT_READY had been returned by a previous call to RunDiagnostics()\r
+ /// and there is a desire to cancel the current running diagnostics operation.\r
+ ///\r
+ EfiDriverDiagnosticTypeCancel = 3,\r
EfiDriverDiagnosticTypeMaximum\r
} EFI_DRIVER_DIAGNOSTIC_TYPE;\r
\r
the driver writer.\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
+ @param Buffer A buffer that contains a Null-terminated 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
\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_INVALID_PARAMETER ChildHandle is not NULL and it 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 EFI_HANDLE.\r
@retval EFI_INVALID_PARAMETER Language is NULL.\r
@retval EFI_INVALID_PARAMETER ErrorType is NULL.\r
@retval EFI_INVALID_PARAMETER BufferType is NULL.\r
**/\r
typedef\r
EFI_STATUS\r
-(EFIAPI *EFI_DRIVER_DIAGNOSTICS_RUN_DIAGNOSTICS) (\r
+(EFIAPI *EFI_DRIVER_DIAGNOSTICS_RUN_DIAGNOSTICS)(\r
IN EFI_DRIVER_DIAGNOSTICS_PROTOCOL *This,\r
IN EFI_HANDLE ControllerHandle,\r
IN EFI_HANDLE ChildHandle OPTIONAL,\r
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 contains one or more\r
- ISO 639-2 language codes. This is the list of language \r
- codes that this protocol supports.\r
-\r
-**/\r
+///\r
+/// Used to perform diagnostics on a controller that an EFI Driver is managing.\r
+///\r
struct _EFI_DRIVER_DIAGNOSTICS_PROTOCOL {\r
EFI_DRIVER_DIAGNOSTICS_RUN_DIAGNOSTICS RunDiagnostics;\r
+ ///\r
+ /// A Null-terminated ASCII string that contains one or more ISO 639-2\r
+ /// language codes. This is the list of language codes that this protocol supports. \r
+ /// \r
CHAR8 *SupportedLanguages;\r
};\r
\r