Provides the APIs for PBIST.
|
enum | SDL_PBIST_inst {
SDL_PBIST_INST_MPU,
SDL_PBIST_INST_ENCODE,
SDL_PBIST_INST_PBIST1,
SDL_PBIST_INST_WKUP_PBIST1,
SDL_PBIST_INST_GPU,
SDL_PBIST_INST_MAIN,
SDL_PBIST_INST_MCU
} |
| PBIST instance. More...
|
|
enum | SDL_PBIST_hwpostInst { SDL_PBIST_HWPOST_INST_MCU
} |
|
enum | SDL_PBIST_postStatus { SDL_PBIST_POST_COMPLETED_SUCCESS,
SDL_PBIST_POST_COMPLETED_FAILURE,
SDL_PBIST_POST_TIMEOUT,
SDL_PBIST_POST_NOT_RUN
} |
|
enum | SDL_PBIST_testType { SDL_PBIST_TEST,
SDL_PBIST_NEG_TEST
} |
| PBIST self test type. More...
|
|
◆ SDL_PBIST_NUM_INSTANCES
#define SDL_PBIST_NUM_INSTANCES 7U |
◆ SDL_PBIST_inst
PBIST instance.
This enum defines the PBIST instances supported by the SDL_PBIST_selfTest API.
Enumerator |
---|
SDL_PBIST_INST_MPU | COMPUTE_CLUSTER0_PBIST :A53
|
SDL_PBIST_INST_ENCODE | PBIST3 : Encoder
|
SDL_PBIST_INST_PBIST1 | PBIST1 :
|
SDL_PBIST_INST_WKUP_PBIST1 | WKUP_PBIST1 :
|
SDL_PBIST_INST_GPU | GPU0 : GPU IP
|
SDL_PBIST_INST_MAIN | PBIST0 : Main IP
|
SDL_PBIST_INST_MCU | MCU_PBIST0 : MCU Pulsar
|
◆ SDL_PBIST_hwpostInst
Enumerator |
---|
SDL_PBIST_HWPOST_INST_MCU | MCU Instance
|
◆ SDL_PBIST_postStatus
Enumerator |
---|
SDL_PBIST_POST_COMPLETED_SUCCESS | The HW POST PBIST completed and the test passed
|
SDL_PBIST_POST_COMPLETED_FAILURE | The HW POST PBIST completed and the test failed
|
SDL_PBIST_POST_TIMEOUT | The HW POST PBIST was run but timed out
|
SDL_PBIST_POST_NOT_RUN | The HW POST PBIST was not performed on this device
|
◆ SDL_PBIST_testType
PBIST self test type.
This enum defines the test types supported by the SDL_PBIST_selfTest API.
Enumerator |
---|
SDL_PBIST_TEST | PBIST Test Performs the PBIST test for a the instance specified. When a valid pConfig is passed, those values will be used to execute the test. If pConfig is NULL (recommended), then the default "golden vectors" will be used to execute the test.
|
SDL_PBIST_NEG_TEST | PBIST Negative Test Performs the PBIST negative test to verify the PBIST logic for the instance specified
|
◆ SDL_PBIST_getDevicePostStatus()
◆ SDL_PBIST_selfTest()
PBIST self test.
This function executes a PBIST self test of the specified type for a specific PBIST instance. The test types supported are defined in SDL_PBIST_testType. PBIST is a feature that is used for self test of the memory regions in the SoC. Multiple instances may be supported. Note: The PBIST test is destructive to the cores/IP which are being tested. Therefore it should be executed from a different core than the one under test. It is important to note that execution of PBIST self-tests require preparation of the IPS under test by bringing them to a certain power and reset state before executing the test. The application must take care of this sequence before executing the self-test. The SDL examples give a reference for the necessary sequences. The PBIST instances supported are specific to the SoC, and are defined in the soc-specific header file.
- Parameters
-
instance | [IN] PBIST instance |
testType | [IN] PBIST test type to run. |
timeout | [IN] Max number of times to check for PBIST done |
pResult | [OUT] Pointer to variable to indicate result |
- Returns
- The SDL error code for the API. If pResult is NULL: SDL_EBADARGS If testType is invalid: SDL_EBADARGS If other error happened: SDL_EFAIL Success: SDL_PASS
◆ SDL_SBL_PBIST_selfTest()
PBIST self test for MCU only.
This function executes a PBIST self test of the specified type for a MCU PBIST instance. The test types supported are defined in SDL_PBIST_testType. PBIST is a feature that is used for self test of the memory regions in the SoC. Multiple instances may be supported. Note: The PBIST test is destructive to the cores/IP which are being tested. Therefore it should be executed from a different core than the one under test. It is important to note that execution of PBIST self-tests require preparation of the IPS under test by bringing them to a certain power and reset state before executing the test. The application must take care of this sequence before executing the self-test. The SDL examples give a reference for the necessary sequences. The PBIST instances supported are specific to the SoC, and are defined in the soc-specific header file.
- Parameters
-
instance | [IN] PBIST instance |
- Returns
- The SDL error code for the API. If pResult is NULL: SDL_EBADARGS If testType is invalid: SDL_EBADARGS If other error happened: SDL_EFAIL Success: SDL_PASS
◆ SDL_SBL_PBIST_checkDone()
PBIST API to check if the test is complete.
This function checks if the PBIST test is complete.
- Parameters
-
instance | [IN] PBIST instance |
- Returns
- The SDL error code for the API. Success:PBIST_DONE Fail:PBIST_NOT_DONE
◆ SDL_SBL_PBIST_checkResult()
PBIST API to check if PBIST test is executed successfully.
This function checks if the PBIST test is executed successfully..
- Parameters
-
instance | [IN] PBIST instance |
- Returns
- The SDL error code for the API. Success:SDL_PASS Fail:SDL_EFAIL