AM64x MCU+ SDK  09.02.00
SDL_LBIST_IP_FUNCTION

Introduction

Functions

int32_t SDL_LBIST_enableIsolation (SDL_lbistRegs *pLBISTRegs)
 Enable LBIST Isolation. More...
 
int32_t SDL_LBIST_disableIsolation (SDL_lbistRegs *pLBISTRegs)
 Disable LBIST Isolation. More...
 
int32_t SDL_LBIST_reset (SDL_lbistRegs *pLBISTRegs)
 Reset LBIST. More...
 
int32_t SDL_LBIST_enableRunBISTMode (SDL_lbistRegs *pLBISTRegs)
 Enable run BIST mode. More...
 
int32_t SDL_LBIST_clearRunBISTMode (SDL_lbistRegs *pLBISTRegs)
 Clear run BIST mode. More...
 
int32_t SDL_LBIST_start (SDL_lbistRegs *pLBISTRegs)
 LBIST start. More...
 
int32_t SDL_LBIST_stop (SDL_lbistRegs *pLBISTRegs)
 LBIST stop. More...
 
int32_t SDL_LBIST_isRunning (const SDL_lbistRegs *pLBISTRegs, bool *pIsRunning)
 LBIST check running. More...
 
int32_t SDL_LBIST_isDone (const SDL_lbistRegs *pLBISTRegs, bool *pIsDone)
 LBIST check done. More...
 
int32_t SDL_LBIST_programConfig (SDL_lbistRegs *pLBISTRegs, const SDL_LBIST_config_t *pConfig)
 LBIST Program config. More...
 
int32_t SDL_LBIST_getMISR (SDL_lbistRegs *pLBISTRegs, uint32_t *pMISRValue)
 LBIST get MISR. More...
 
int32_t SDL_LBIST_getExpectedMISR (const uint32_t *pLBISTSig, uint32_t *pExpectedMISRValue)
 LBIST get expected MISR. More...
 

Function Documentation

◆ SDL_LBIST_enableIsolation()

int32_t SDL_LBIST_enableIsolation ( SDL_lbistRegs pLBISTRegs)

Enable LBIST Isolation.

This function enables LBIST isolation. Isolation needs to be enabled before. starting LBIST.

Parameters
pLBISTRegs[IN] Pointer to LBIST register map
Returns
The SDL error code for the API. If pLBISTRegs is NULL: SDL_EBADARGS Success: SDL_PASS

◆ SDL_LBIST_disableIsolation()

int32_t SDL_LBIST_disableIsolation ( SDL_lbistRegs pLBISTRegs)

Disable LBIST Isolation.

This function disables LBIST isolation. This is done after LBIST is complete. NOTE: This should not be called when the LBIST test is running. If called while LBIST test is running, it may lead to undefined behaviour.

Parameters
pLBISTRegs[IN] Pointer to LBIST register map
Returns
The SDL error code for the API. If pLBISTRegs is NULL: SDL_EBADARGS Success: SDL_PASS

◆ SDL_LBIST_reset()

int32_t SDL_LBIST_reset ( SDL_lbistRegs pLBISTRegs)

Reset LBIST.

This function resets LBIST module. This is done preparing for a new LBIST execution, as well as exiting an LBIST execution.

Parameters
pLBISTRegs[IN] Pointer to LBIST register map
Returns
The SDL error code for the API. If pLBISTRegs is NULL: SDL_EBADARGS Success: SDL_PASS

◆ SDL_LBIST_enableRunBISTMode()

int32_t SDL_LBIST_enableRunBISTMode ( SDL_lbistRegs pLBISTRegs)

Enable run BIST mode.

This function enables Run BIST mode. This is needed to be set before starting LBIST.

Parameters
pLBISTRegs[IN] Pointer to LBIST register map
Returns
The SDL error code for the API. If pLBISTRegs is NULL: SDL_EBADARGS Success: SDL_PASS

◆ SDL_LBIST_clearRunBISTMode()

int32_t SDL_LBIST_clearRunBISTMode ( SDL_lbistRegs pLBISTRegs)

Clear run BIST mode.

This function clears Run BIST mode. This is done after LBIST execution is complete. If called in the middle of the test, the test may terminate prematurely.

Parameters
pLBISTRegs[IN] Pointer to LBIST register map
Returns
The SDL error code for the API. If pLBISTRegs is NULL: SDL_EBADARGS Success: SDL_PASS

◆ SDL_LBIST_start()

int32_t SDL_LBIST_start ( SDL_lbistRegs pLBISTRegs)

LBIST start.

This function starts LBIST execution.

Parameters
pLBISTRegs[IN] Pointer to LBIST register map
Returns
The SDL error code for the API. If pLBISTRegs is NULL: SDL_EBADARGS Success: SDL_PASS

◆ SDL_LBIST_stop()

int32_t SDL_LBIST_stop ( SDL_lbistRegs pLBISTRegs)

LBIST stop.

This function stops LBIST execution. This is normally called after checking the signature and clearing the run-BIST mode. But this can also be called asynchronously to stop LBIST in the middle of a test.

Parameters
pLBISTRegs[IN] Pointer to LBIST register map
Returns
The SDL error code for the API. If pLBISTRegs is NULL: SDL_EBADARGS Success: SDL_PASS

◆ SDL_LBIST_isRunning()

int32_t SDL_LBIST_isRunning ( const SDL_lbistRegs pLBISTRegs,
bool *  pIsRunning 
)

LBIST check running.

This function checks if LBIST is running. Note that this is specifically checking if the LBIST is currently running, and this is different from done status.

Parameters
pLBISTRegs[IN] Pointer to LBIST register map
pIsRunning[OUT] Pointer to variable to indicate running status SDL_TRUE : LBIST is running. SDL_FALSE: LBIST is not running.
Returns
The SDL error code for the API. If pLBISTRegs or pIsRunning is NULL: SDL_EBADARGS Success: SDL_PASS.

◆ SDL_LBIST_isDone()

int32_t SDL_LBIST_isDone ( const SDL_lbistRegs pLBISTRegs,
bool *  pIsDone 
)

LBIST check done.

This function checks if LBIST is complete. Note that this is different from running status, which shows if the LBIST is curently running.

Parameters
pLBISTRegs[IN] Pointer to LBIST register map
pIsDone[OUT] Pointer to variable to indicate done status SDL_TRUE : LBIST is done SDL_FALSE: LBIST is not complete
Returns
The SDL error code for the API. If pLBISTRegs or pIsDone is NULL: SDL_EBADARGS Success: SDL_PASS

◆ SDL_LBIST_programConfig()

int32_t SDL_LBIST_programConfig ( SDL_lbistRegs pLBISTRegs,
const SDL_LBIST_config_t pConfig 
)

LBIST Program config.

This function configures the parameters for LBIST execution.

Parameters
pLBISTRegs[IN] Pointer to LBIST register map
pConfig[IN] Pointer to LBIST program configuration
Returns
The SDL error code for the API. If pLBISTRegs or pConfig is NULL: SDL_EBADARGS Success: SDL_PASS

◆ SDL_LBIST_getMISR()

int32_t SDL_LBIST_getMISR ( SDL_lbistRegs pLBISTRegs,
uint32_t *  pMISRValue 
)

LBIST get MISR.

This function returns the MISR register. This register holds the Multiple Input Signature generated by LBIST test. It should be called after the LBIST execution has completed.

Parameters
pLBISTRegs[IN] Pointer to LBIST register map
pMISRValue[OUT] Pointer to MISR value return
Returns
The SDL error code for the API. If pLBISTRegs or pMISRValue is NULL: SDL_EBADARGS Success: SDL_PASS

◆ SDL_LBIST_getExpectedMISR()

int32_t SDL_LBIST_getExpectedMISR ( const uint32_t *  pLBISTSig,
uint32_t *  pExpectedMISRValue 
)

LBIST get expected MISR.

This function returns the expected MISR register value. This register holds the expected Multiple Input Signature generated by LBIST test.

Parameters
pLBISTSig[IN] Pointer to LBIST Sig Register.
pExpectedMISRValue[OUT] Pointer to MISR value return.
Returns
The SDL error code for the API. If pLBISTRegs or pExpectedMISRValue is NULL: SDL_EBADARGS Success: SDL_PASS