pdiag_diagnose_state
Purpose
Puts the device under test into the correct state for testing.
Syntax
#include <sys/pdiag_def.h>
int32 pdiag_diagnose_state ( char *device_instance )
Description
The pdiag_diagnose_state subroutine unconfigures the device, and its children if necessary, to set the device into the DIAGNOSE state. Original states of all devices changed will be saved. Use pdiag_restore_state to put the changed devices back to their original states.
This function is platform-implementation specific. Its main purpose is to make sure that the target device is in the correct state for diagnostic purposes and that the Enhanced Error Handling (EEH) option is enabled during the test. If the device is already in a diagnostic state, or any state allowed by the operating system for this purpose, then this function should return a successful status value of zero. If an error occurs, then this function should return a non-zero value.
The global variable diag_cfg_errno will be set to the return value of the method invoked for the device.
Parameters
Parameter | Description |
---|---|
device_instance | Name of the device under test. |
Return Value
The pdiag_diagnose_state subroutine returns one of the following values:
Return Value | Description |
---|---|
0 | Successful return. |
-1 | Software error. |
1 | Error returned from device method. The diag_cfg_errno variable contains the error code from the device method. Refer to the/usr/include/cf.h file. The E_FINDCHILD and E_NEWCHILD values are not failures. |
-2 | EEH hardware error. |