Efi_driver_diagnostics_protocol.rundiagnostics() – Intel Extensible Firmware Interface User Manual
Page 286

Extensible Firmware Interface Specification
9-44
12/01/02
Version 1.10
EFI_DRIVER_DIAGNOSTICS_PROTOCOL.RunDiagnostics()
Summary
Runs diagnostics on a controller.
Prototype
typedef
EFI_STATUS
(EFIAPI *EFI_DRIVER_DIAGNOSTICS_RUN_DIAGNOSTICS) (
IN EFI_DRIVER_DIAGNOSTICS_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
);
Parameters
This
A pointer to the
EFI_DRIVER_DIAGNOSTICS_PROTOCOL
instance.
ControllerHandle
The handle of the controller to run diagnostics on.
ChildHandle
The 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 a 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.
DiagnosticType
Indicates type of diagnostics to perform on the controller
specified by
ControllerHandle
and
ChildHandle
. See
“Related Definitions” for the list of supported types.
Language
A pointer to a three character ISO 639-2 language identifier.
This is the language in which the optional error message should
be returned in
Buffer
, 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.