X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=MdePkg%2FInclude%2FProtocol%2FDriverDiagnostics.h;h=916e4a5d629392bd86f51e696973c0bf159253ff;hp=d8cddd963f325c0fa5bd18f37e4ac12ec81a1248;hb=08855193cafebaa2e071ffb5f083bcb3cb6d4df0;hpb=99e8ed219f48b82694424e46c9512d4929d9d54e diff --git a/MdePkg/Include/Protocol/DriverDiagnostics.h b/MdePkg/Include/Protocol/DriverDiagnostics.h index d8cddd963f..916e4a5d62 100644 --- a/MdePkg/Include/Protocol/DriverDiagnostics.h +++ b/MdePkg/Include/Protocol/DriverDiagnostics.h @@ -1,24 +1,22 @@ /** @file EFI Driver Diagnostics Protocol - Copyright (c) 2006 - 2008, Intel Corporation - All rights reserved. This program and the accompanying materials - are licensed and made available under the terms and conditions of the BSD License - which accompanies this distribution. The full text of the license may be found at - http://opensource.org/licenses/bsd-license.php - - THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, - WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. +Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.
+This program and the accompanying materials are licensed and made available under +the terms and conditions of the BSD License that accompanies this distribution. +The full text of the license may be found at +http://opensource.org/licenses/bsd-license.php. + +THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. **/ #ifndef __EFI_DRIVER_DIAGNOSTICS_H__ #define __EFI_DRIVER_DIAGNOSTICS_H__ -#include - /// -/// Global ID for the Driver Diagnostics Protocol as defined in UEFI 2.0. +/// The global ID for the Driver Diagnostics Protocol as defined in EFI 1.1. /// #define EFI_DRIVER_DIAGNOSTICS_PROTOCOL_GUID \ { \ @@ -28,9 +26,26 @@ typedef struct _EFI_DRIVER_DIAGNOSTICS_PROTOCOL EFI_DRIVER_DIAGNOSTICS_PROTOCOL; typedef enum { + /// + /// Performs standard diagnostics on the controller. + /// EfiDriverDiagnosticTypeStandard = 0, + /// + /// This is an optional diagnostic type that performs diagnostics on the controller that may + /// take an extended amount of time to execute. + /// EfiDriverDiagnosticTypeExtended = 1, + /// + /// This is an optional diagnostic type that performs diagnostics on the controller that are + /// suitable for a manufacturing and test environment. + /// EfiDriverDiagnosticTypeManufacturing= 2, + /// + /// This is an optional diagnostic type that would only be used in the situation where an + /// EFI_NOT_READY had been returned by a previous call to RunDiagnostics() + /// and there is a desire to cancel the current running diagnostics operation. + /// + EfiDriverDiagnosticTypeCancel = 3, EfiDriverDiagnosticTypeMaximum } EFI_DRIVER_DIAGNOSTIC_TYPE; @@ -56,7 +71,7 @@ typedef enum { the driver writer. @param ErrorType A GUID that defines the format of the data returned in Buffer. @param BufferSize The size, in bytes, of the data returned in Buffer. - @param Buffer A buffer that contains a Null-terminated Unicode string + @param Buffer A buffer that contains a Null-terminated string plus some additional data whose format is defined by ErrorType. Buffer is allocated by this function with AllocatePool(), and it is the caller's responsibility @@ -64,8 +79,8 @@ typedef enum { @retval EFI_SUCCESS The controller specified by ControllerHandle and ChildHandle passed the diagnostic. - @retval EFI_INVALID_PARAMETER ControllerHandle is not a valid EFI_HANDLE. - @retval EFI_INVALID_PARAMETER ChildHandle is not NULL and it is not a valid EFI_HANDLE. + @retval EFI_INVALID_PARAMETER ControllerHandle is NULL. + @retval EFI_INVALID_PARAMETER ChildHandle is not NULL, and it is not a valid EFI_HANDLE. @retval EFI_INVALID_PARAMETER Language is NULL. @retval EFI_INVALID_PARAMETER ErrorType is NULL. @retval EFI_INVALID_PARAMETER BufferType is NULL. @@ -99,24 +114,15 @@ EFI_STATUS OUT CHAR16 **Buffer ); - -// -// - -/** - Interface structure for the Driver Diagnostics Protocol. - - @par Protocol Description: - Used to perform diagnostics on a controller that an EFI Driver is managing. - - @param RunDiagnostics Runs diagnostics on a controller. - @param SupportedLanguages A Null-terminated ASCII string that contains one or more - ISO 639-2 language codes. This is the list of language - codes that this protocol supports. - -**/ +/// +/// Used to perform diagnostics on a controller that an EFI Driver is managing. +/// struct _EFI_DRIVER_DIAGNOSTICS_PROTOCOL { EFI_DRIVER_DIAGNOSTICS_RUN_DIAGNOSTICS RunDiagnostics; + /// + /// A Null-terminated ASCII string that contains one or more ISO 639-2 + /// language codes. This is the list of language codes that this protocol supports. + /// CHAR8 *SupportedLanguages; };