54 #include "sdl_common.h" 108 #define ESM_NUMBER_OF_GROUP_REGS (32u) 117 #define ESM_OPERATION_MODE_NORMAL 0x0U 119 #define ESM_OPERATION_MODE_ERROR_FORCE 0xAu 131 #define ESM_INTR_TYPE_CONFIG_ERROR (0x0u) 133 #define ESM_INTR_TYPE_LOW_PRIO_ERROR (0x1u) 135 #define ESM_INTR_TYPE_HIGH_PRIO_ERROR (0x2u) 147 #define ESM_INTR_PRIORITY_LEVEL_LOW (0x0u) 149 #define ESM_INTR_PRIORITY_LEVEL_HIGH (0x1u) 168 typedef struct esmRevisionId
187 typedef struct esmInfo
204 typedef struct esmGroupIntrStatus
241 volatile uint32_t
EN;
247 volatile uint32_t
HI;
404 uint32_t *pInfluence);
int32_t SDL_ESM_getCurrErrPinLowTimeCnt(uint32_t baseAddr, uint32_t *pPinCntrPre)
This API is used to get the current value of low time counter.
int32_t SDL_ESM_writeEOI(uint32_t baseAddr, esmIntrType_t intrType)
This API is used to write EOI.
volatile uint32_t PIN_CNTR
Definition: esm.h:249
ESM static registers list.
Definition: esm.h:237
uint32_t custom
Definition: esm.h:178
uint32_t func
Definition: esm.h:172
volatile uint32_t RAW
Definition: esm.h:226
int32_t SDL_ESM_getMode(uint32_t baseAddr, esmOperationMode_t *pMode)
This API is used to read operation mode of ESM module.
volatile uint32_t HI
Definition: esm.h:247
int32_t SDL_ESM_getGroupIntrStatus(uint32_t baseAddr, esmIntrPriorityLvl_t intrPrioType, esmGroupIntrStatus_t *pIntrstatus)
This API is used to get the interrupt/error status for a group. This will also return highest pending...
int32_t SDL_ESM_reset(uint32_t baseAddr)
This API is used to reset ESM module. Reset is used to reset all enables and raw status bits.
int32_t SDL_ESM_setIntrPriorityLvl(uint32_t baseAddr, uint32_t intrSrc, esmIntrPriorityLvl_t intrPriorityLvl)
This API is used to set interrupt level.
int32_t SDL_ESM_disableIntr(uint32_t baseAddr, uint32_t intrNum)
This API is used to disable interrupt.
int32_t SDL_ESM_enableCfgIntr(uint32_t baseAddr, uint32_t group)
This API is used to enable the configuration interrupt.
uint32_t esmIntrPriorityLvl_t
ESM Interrupt Priority Levels.
Definition: esm.h:141
int32_t SDL_ESM_isEnableCfgIntr(uint32_t baseAddr, uint32_t group, uint32_t *pEnStatus)
This API is used check if the configuration interrupt for a group is enabled/disabled.
int32_t SDL_ESM_setCfgIntrStatusRAW(uint32_t baseAddr, uint32_t group)
This API is used to set the configuration interrupt RAW status for a group.
uint32_t minor
Definition: esm.h:180
volatile uint32_t INTR_EN_SET
Definition: esm.h:227
int32_t SDL_ESM_resetErrPin(uint32_t baseAddr)
This API is used to reset the nERROR pin.
volatile uint32_t PIN_CTRL
Definition: esm.h:248
volatile uint32_t PIN_EN_CLR
Definition: esm.h:231
uint32_t esmIntrType_t
ESM Interrupt Type to select level for interrupt.
Definition: esm.h:125
int32_t SDL_ESM_getInfluenceOnErrPin(uint32_t baseAddr, uint32_t intrSrc, uint32_t *pInfluence)
This API is used to get the influence of interrupt on nERROR pin.
volatile uint32_t PID
Definition: esm.h:239
int32_t SDL_ESM_getErrPinLowTimePreload(uint32_t baseAddr, uint32_t *pLowTime)
This API is used to read the low time counter pre-load value.
volatile uint32_t LOW_PRI
Definition: esm.h:244
uint32_t rtlRev
Definition: esm.h:174
uint32_t highestPendPlsIntNum
Definition: esm.h:206
int32_t SDL_ESM_getIntrStatusRAW(uint32_t baseAddr, uint32_t intrSrc, uint32_t *pStatus)
This API is used to get the interrupt RAW status.
uint32_t lastRstType
Definition: esm.h:189
int32_t SDL_ESM_disableCfgIntr(uint32_t baseAddr, uint32_t intrNum)
This API is used to disable the configuration interrupt.
Structure to access the status of interrupts belonging to a High or Low priority interrupt.
Definition: esm.h:204
int32_t SDL_ESM_setMode(uint32_t baseAddr, esmOperationMode_t mode)
This API is used to configure operation mode of ESM module.
Structure for accessing information register of ESM module.
Definition: esm.h:187
uint32_t plsGrpNum
Definition: esm.h:194
uint32_t highestPendLvlIntNum
Definition: esm.h:210
int32_t SDL_ESM_clearIntrStatus(uint32_t baseAddr, uint32_t intrSrc)
This API is used to clear the interrupt status.
#define ESM_NUMBER_OF_GROUP_REGS
ESM Operation Mode type.
Definition: esm.h:108
int32_t SDL_ESM_enableGlobalIntr(uint32_t baseAddr)
This API is used to enable Global control of interrupt.
int32_t SDL_ESM_getGlobalIntrEnabledStatus(uint32_t baseAddr, uint32_t *pStatus)
This API is used read the ESM information register.
volatile uint32_t ERR_EN_CLR
Definition: esm.h:243
ESM Error Group static registers list.
Definition: esm.h:225
int32_t SDL_ESM_isEnableIntr(uint32_t baseAddr, uint32_t intrSrc, uint32_t *pEnStatus)
This API is used check if interrupt is enabled/disabled.
uint32_t grpIntrStatus
Definition: esm.h:214
uint32_t esmOperationMode_t
ESM Operation Mode type.
Definition: esm.h:112
Structure for accessing Revision ID of ESM module.
Definition: esm.h:168
uint32_t scheme
Definition: esm.h:170
int32_t SDL_ESM_setErrPinLowTimePreload(uint32_t baseAddr, uint32_t lowTime)
This API is used to configure the low time counter pre-load value.
int32_t SDL_ESM_disableGlobalIntr(uint32_t baseAddr)
This API is used to disable Global control of interrupt.
Header file contains enumerations, structure definitions and function declarations for SDL Error Sign...
volatile uint32_t INTR_EN_CLR
Definition: esm.h:228
volatile uint32_t LOW
Definition: esm.h:246
This file contains SOC specific defintions.
int32_t SDL_ESM_getCfgIntrStatus(uint32_t baseAddr, uint32_t group, uint32_t *pStaus)
This API is used to get the configuration interrupt status for a group.
volatile uint32_t PIN_CNTR_PRE
Definition: esm.h:250
volatile uint32_t INFO
Definition: esm.h:240
int32_t SDL_ESM_getIntrPriorityLvl(uint32_t baseAddr, uint32_t intrSrc, esmIntrPriorityLvl_t *pIntrPriorityLvl)
This API is used to get interrupt level.
int32_t SDL_ESM_setInfluenceOnErrPin(uint32_t baseAddr, uint32_t intrSrc, bool enable)
This API is used to set the influence of interrupt on nERROR pin.
volatile uint32_t ERR_EN_SET
Definition: esm.h:242
volatile uint32_t INT_PRIO
Definition: esm.h:229
uint32_t lvlGrpNum
Definition: esm.h:196
int32_t SDL_ESM_enableIntr(uint32_t baseAddr, uint32_t intrNum)
This API is used to enable interrupt.
int32_t SDL_ESM_getInfo(uint32_t baseAddr, esmInfo_t *pInfo)
This API is used read the ESM information register.
int32_t SDL_ESM_getRevisionId(uint32_t baseAddr, esmRevisionId_t *pRevId)
This API is used get the ESM revision ID.
int32_t SDL_ESM_getErrPinStatus(uint32_t baseAddr, uint32_t *pStatus)
This API is used to get the current status of nERROR pin.
volatile uint32_t PIN_EN_SET
Definition: esm.h:230
int32_t SDL_ESM_clearCfgIntrStatus(uint32_t baseAddr, uint32_t group)
This API is used to clear the configuration interrupt status.
int32_t SDL_ESM_getIntrStatus(uint32_t baseAddr, uint32_t intrSrc, uint32_t *pStaus)
This API is used to get the interrupt status.
volatile uint32_t EN
Definition: esm.h:241
int32_t SDL_ESM_setIntrStatusRAW(uint32_t baseAddr, uint32_t intrSrc)
This API is used to set the interrupt RAW status.
uint32_t major
Definition: esm.h:176
volatile uint32_t HI_PRI
Definition: esm.h:245