AM62Px MCU+ SDK  09.02.01
esm/sdl_esm.h File Reference

Introduction

Header file contains enumerations, structure definitions and function declarations for SDL Error Signaling Module interface.

The SDL ESM enumerations include:

  1. SDL ESM interrupt types
  2. SDL ESM interrupt sources
  3. SDL ESM Watchdog Timer IDs

The SDL ESM function macros include:

  1. Application provided callback function type for ECC/CCM specific ESM events

The SDL ESM data structures include:

  1. Structure of the ECC error sources which map to the ESM interrupt sources
  2. Structure of the ESM error configuration
  3. Structure of the initial ESM configuration

The SDL ESM APIs include:

  1. API to initialize the SDL ESM
  2. APIs to set/reset nERROR pin
  3. API to get nERROR pin status
  4. API to insert an ESM error
  5. API to execute self test of ESM module
  6. APIs to register handler for ECC/CCM with ESM
  7. APIs to handle ESM high priority/low prioirty/config interrupts
  8. API to get ESM Interrupt Number corresponding to the input ESM interrupt type
  9. Application provided external callback function for ESM handling

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  SDL_ESM_ErrorConfig_t
 ESM error configuration. More...
 
struct  SDL_ESM_config
 ESM init configuration. More...
 

Macros

#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_ECC_PARAM_MAIN_MSMC_AGGR0_SEC_ERROR   (10001u)
 Main MSMC ECC AGGR0 detected 1-bit ECC error source. More...
 
#define SDL_ESM_ECC_PARAM_MAIN_MSMC_AGGR0_DED_ERROR   (10002u)
 Main MSMC ECC AGGR0 detected 2-bit ECC error source. More...
 
#define SDL_ESM_ECC_PARAM_MAIN_A72_AGGR0_SEC_ERROR   (10003u)
 Main A72 ECC AGGR0 detected 1-bit ECC error source. More...
 
#define SDL_ESM_ECC_PARAM_MAIN_A72_AGGR0_DED_ERROR   (10004u)
 Main A72 ECC AGGR0 detected 2-bit ECC error source. More...
 

Typedefs

typedef int32_t SDL_Result
 
typedef int32_t(* SDL_ESM_applicationCallback) (SDL_ESM_Inst instance, SDL_ESM_IntType intrType, uint32_t grpChannel, uint32_t index, uint32_t intSrc, void *arg)
 

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

void SDL_ESM_hiInterruptHandler (void *arg)
 Esm Hi Interrupt Handler for MCU Esm Instance. More...
 
void SDL_ESM_loInterruptHandler (void *arg)
 Esm Lo Interrupt Handler for MCU Esm Instance. More...
 
void SDL_ESM_configInterruptHandler (void *arg)
 Esm Config Interrupt Handler for MCU Instance. More...
 
int32_t SDL_ESM_getIntNumber (SDL_ESM_Inst esmInstType, SDL_ESM_IntType esmIntType)
 Esm get Interrupt Number corresponding to the input interrupt type. More...