XenevaOS
Loading...
Searching...
No Matches
Classes | Macros | Typedefs | Variables
DriverDiagnostics2.h File Reference
#include <Protocol/DriverDiagnostics.h>
Include dependency graph for DriverDiagnostics2.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  _EFI_DRIVER_DIAGNOSTICS2_PROTOCOL
 

Macros

#define EFI_DRIVER_DIAGNOSTICS2_PROTOCOL_GUID
 

Typedefs

typedef struct _EFI_DRIVER_DIAGNOSTICS2_PROTOCOL EFI_DRIVER_DIAGNOSTICS2_PROTOCOL
 
typedef EFI_STATUS(EFIAPIEFI_DRIVER_DIAGNOSTICS2_RUN_DIAGNOSTICS) (IN EFI_DRIVER_DIAGNOSTICS2_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN EFI_HANDLE ChildHandle OPTIONAL, IN EFI_DRIVER_DIAGNOSTIC_TYPE DiagnosticType, IN CHAR8 *Language, OUT EFI_GUID **ErrorType, OUT UINTN *BufferSize, OUT CHAR16 **Buffer)
 

Variables

EFI_GUID gEfiDriverDiagnostics2ProtocolGuid
 

Detailed Description

UEFI Driver Diagnostics2 Protocol

Copyright (c) 2006 - 2018, 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.

Macro Definition Documentation

◆ EFI_DRIVER_DIAGNOSTICS2_PROTOCOL_GUID

#define EFI_DRIVER_DIAGNOSTICS2_PROTOCOL_GUID
Value:
{ \
0x4d330321, 0x025f, 0x4aac, {0x90, 0xd8, 0x5e, 0xd9, 0x00, 0x17, 0x3b, 0x63 } \
}

Typedef Documentation

◆ EFI_DRIVER_DIAGNOSTICS2_PROTOCOL

◆ EFI_DRIVER_DIAGNOSTICS2_RUN_DIAGNOSTICS

typedef EFI_STATUS(EFIAPI * EFI_DRIVER_DIAGNOSTICS2_RUN_DIAGNOSTICS) (IN EFI_DRIVER_DIAGNOSTICS2_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN EFI_HANDLE ChildHandle OPTIONAL, IN EFI_DRIVER_DIAGNOSTIC_TYPE DiagnosticType, IN CHAR8 *Language, OUT EFI_GUID **ErrorType, OUT UINTN *BufferSize, OUT CHAR16 **Buffer)

Runs diagnostics on a controller.

Parameters
ThisA pointer to the EFI_DRIVER_DIAGNOSTICS2_PROTOCOL instance.
ControllerHandleThe handle of the controller to run diagnostics on.
ChildHandleThe handle of the child controller to run diagnostics on This is an optional parameter that may be NULL. It will be NULL for device drivers. It will also be NULL for bus drivers that wish to run diagnostics on the bus controller. It will not be NULL for a bus driver that wishes to run diagnostics on one of its child controllers.
DiagnosticTypeIndicates the type of diagnostics to perform on the controller specified by ControllerHandle and ChildHandle. See "Related Definitions" for the list of supported types.
LanguageA pointer to a Null-terminated ASCII string array indicating the language. This is the language of the driver name that the caller is requesting, and it must match one of the languages specified in SupportedLanguages. The number of languages supported by a driver is up to the driver writer. Language is specified in RFC 4646 language code format.
ErrorTypeA GUID that defines the format of the data returned in Buffer.
BufferSizeThe size, in bytes, of the data returned in Buffer.
BufferA buffer that contains a Null-terminated Unicode 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 to free it with a call to FreePool().
Return values
EFI_SUCCESSThe controller specified by ControllerHandle and ChildHandle passed the diagnostic.
EFI_ACCESS_DENIEDThe request for initiating diagnostics was unable to be complete due to some underlying hardware or software state.
EFI_INVALID_PARAMETERControllerHandle is NULL.
EFI_INVALID_PARAMETERChildHandle is not NULL and it is not a valid EFI_HANDLE.
EFI_INVALID_PARAMETERLanguage is NULL.
EFI_INVALID_PARAMETERErrorType is NULL.
EFI_INVALID_PARAMETERBufferType is NULL.
EFI_INVALID_PARAMETERBuffer is NULL.
EFI_UNSUPPORTEDThe driver specified by This does not support running diagnostics for the controller specified by ControllerHandle and ChildHandle.
EFI_UNSUPPORTEDThe driver specified by This does not support the type of diagnostic specified by DiagnosticType.
EFI_UNSUPPORTEDThe driver specified by This does not support the language specified by Language.
EFI_OUT_OF_RESOURCESThere are not enough resources available to complete the diagnostics.
EFI_OUT_OF_RESOURCESThere are not enough resources available to return the status information in ErrorType, BufferSize, and Buffer.
EFI_DEVICE_ERRORThe controller specified by ControllerHandle and ChildHandle did not pass the diagnostic.

Variable Documentation

◆ gEfiDriverDiagnostics2ProtocolGuid

EFI_GUID gEfiDriverDiagnostics2ProtocolGuid
extern