Header file contains enumerations, structure definitions and function declarations for SDL Error Signaling Module interface.
Go to the source code of this file.
ESM ECC Error source type | |
#define | SDL_ESM_ECC_PARAM_MCU_CPU0_SEC_ERROR (1u) |
MCU CPU0 detected 1-bit ECC error source. More... | |
#define | SDL_ESM_ECC_PARAM_MCU_CPU0_DED_ERROR (2u) |
MCU CPU0 detected 2-bit ECC error source. More... | |
#define | SDL_ESM_ECC_PARAM_MCU_CPU1_SEC_ERROR (3u) |
MCU CPU1 detected 1-bit ECC error source. More... | |
#define | SDL_ESM_ECC_PARAM_MCU_CPU1_DED_ERROR (4u) |
MCU CPU1 detected 2-bit ECC error source. More... | |
#define | SDL_ESM_ECC_PARAM_MCU_CBASS_SEC_ERROR (5u) |
MCU CBASS detected 1-bit ECC error source. More... | |
#define | SDL_ESM_ECC_PARAM_MCU_CBASS_DED_ERROR (6u) |
MCU CBASS detected 2-bit ECC error source. More... | |
typedef uint32_t | sdlEsmEccErrorSource_t |
Source of the ECC error which maps to the ESM interrupt source. More... | |
Data Structures | |
struct | ESM_GroupIntrStatus |
Structure to access the status of interrupts belonging to a group. More... | |
struct | SDL_ESM_ErrorConfig_t |
ESM error configuration. More... | |
struct | SDL_ESM_NotifyParams |
Parameters used to register the ESM notify function to handle Group1 and Group2 errors. The notify function will be invoked post the ESM FIQ interrupt handler processing. More... | |
struct | SDL_ESM_OpenParams |
ESM Open Parameters. More... | |
struct | SDL_ESM_Params |
ESM Hardware Attributes. More... | |
struct | SDL_ESM_Object |
ESM Module Object. More... | |
struct | SDL_ESM_Config |
ESM Instance configuration. More... | |
Macros | |
#define | SDL_ESM_ERRNO_BASE (-3000) |
ESM Module error base. More... | |
#define | SDL_ESM_INTNUMBER_INVALID (0xffffffffu) |
Invalid interrupt number. More... | |
#define | SDL_ESM_INST_INVALID (0xfffffffeu) |
Invalid Esm Instance. More... | |
#define | SDL_ESM_ERRORADDR_INVALID (0xffffffffu) |
Address field: Error Address invalid. More... | |
#define | SDL_ESM_ERRORRAMID_INVALID (0xffffffffu) |
Address field: Error RAM ID invalid. More... | |
#define | SDL_ESM_ERRORBITOFFSET_INVALID (0xffffffffffffffffu) |
Address field: Error Bit Error Offset invalid. More... | |
#define | SDL_ESM_ERRORBITGROUP_INVALID (0xffffffffu) |
Address field: Error Bit Error Group invalid. More... | |
#define | SDL_ESM_MAX_EVENT_MAP_NUM_WORDS (32u) |
Maximum number of EVENT words. More... | |
#define | SDL_ESM_EINVAL (SDL_ESM_ERRNO_BASE-1) |
Error Code: Invalid argument More... | |
#define | SDL_ESM_ENOINIT (SDL_ESM_ERRNO_BASE-2) |
Error Code: Operation cannot be done as SDL_ESM_Init is not done. More... | |
#define | SDL_ESM_EREINIT (SDL_ESM_ERRNO_BASE-3) |
Error Code: Operation cannot be done as SDL_ESM_Init is already done and re-init is not permitted. More... | |
#define | SDL_ESM_ENOMEM (SDL_ESM_ERRNO_BASE-4) |
Error Code: Out of memory. More... | |
#define | SDL_ESM_MAX_NOTIFIERS (256U) |
Maximum number of notify callbacks supported. More... | |
#define | SDL_ESM_MAX_ISR_COUNT (256U) |
Maximum ISR supported. More... | |
#define | CONFIG_ESM0 (0U) |
Typedefs | |
typedef int32_t | SDL_Result |
typedef int32_t(* | SDL_ESM_CallBack) (SDL_ESM_Inst instance, int32_t grpChannel, int32_t vecNum, void *arg) |
Callback function which is invoked by the ESM module if a notify function is registered using the SDL_ESM_Init() API. More... | |
Enumerations | |
enum | SDL_ESM_IntType { SDL_ESM_INT_TYPE_HI = 1, SDL_ESM_INT_TYPE_LO = 2, SDL_ESM_INT_TYPE_CFG = 3, SDL_ESM_INT_TYPE_MAX = 4 } |
Functions | |
int32_t | SDL_ESM_getNErrorStatus (SDL_ESM_Inst instance, uint32_t *pStatus) |
SDL ESM API to get the status of the nError pin for the specified ESM instance. More... | |
int32_t | SDL_ESM_getStaticRegisters (SDL_ESM_Inst instance, SDL_ESM_staticRegs *pStaticRegs) |
SDL ESM API to read the static registers. The API reads and returns the static register configuration for the ESM module for the specified instance. This API can be used by the application to read back the static configuration. Comparision of the static configuration registers against expected values is the responsibility of the application. More... | |
int32_t | SDL_ESM_clrNError (SDL_ESM_Inst instance) |
SDL ESM API to clear the nError pin for the specified ESM instance. More... | |
int32_t | SDL_ESM_setNError (SDL_ESM_Inst instance) |
SDL ESM API to set the nError pin for the specified ESM instance. More... | |
SDL_Result | SDL_ESM_init (const SDL_ESM_Inst esmInstType, SDL_ESM_NotifyParams *params, SDL_ESM_OpenParams *esmOpenParams, void *arg) |
SDL ESM API to initialize an ESM instance. The API initializes the specified ESM instance with the provided configuration. The configuration will allow the application to specify for each event whether the interrupt is enabled or disabled, the priority of the event, and whether the nErrorPin assertion is enabled or disabled for the event. More... | |
int32_t | SDL_ESM_registerECCCallback (SDL_ESM_Inst esmInstType, uint32_t eccEvent, SDL_ESM_CallBack callBack, void *callbackArg) |
There are modules within SDL which will generate ESM errors intentionally in the course of running self-tests. The ECC module is one such module. To allow these modules to get the notification when the ESM error occurs, callback registration APIs are provided. The following APIs allow registration of a callback for specific events. This API is used by other SDL modules and not by the application. More... | |
int32_t | SDL_ESM_registerCCMCallback (SDL_ESM_Inst esmInstType, uint32_t eccEvent, SDL_ESM_CallBack callBack, void *callbackArg) |
There are modules within SDL which will generate ESM errors intentionally in the course of running self-tests. The CCM module is one such module. To allow these modules to get the notification when the ESM error occurs, callback registration APIs are provided. The following APIs allow registration of a callback for specific events. This API is used by other SDL modules and not by the application. More... | |
int32_t | SDL_ESM_verifyConfig (SDL_ESM_Inst instance, SDL_ESM_NotifyParams *params) |
SDL ESM API to verify the written configuration of the ESM module. The API verifies the written config that was done during SDL_ESM_init against the provided configuration. More... | |
static void | SDL_ESM_Params_init (SDL_ESM_OpenParams *openPrms) |
Variables | |
static SDL_ESM_Params | gEsmParams [SDL_ESM_INST_DSS_ESM] |
static SDL_ESM_Object | gEsmObjects [CONFIG_ESM0] |
SDL_ESM_Handle | gEsmHandle |
static SDL_ESM_Config | gEsmConfig [SDL_ESM_INST_DSS_ESM] |