AM263Px MCU+ SDK: esm.h File Reference

| AM263Px MCU+ SDK 26.00.00 |

Data Structures | Macros | Functions
esm.h File Reference
APIs for SDL Module » APIs for SDL ESM » ESM Low-Level API

## Introduction

This file contains the prototypes of the APIs present in the device abstraction layer file of ESM. This also contains some related macros.

Go to the source code of this file.

## ESM Operation Mode type
#define | ESM_OPERATION_MODE_NORMAL 0x0U
#define | ESM_OPERATION_MODE_ERROR_FORCE 0xAu
typedef uint32_t | esmOperationMode_t
| ESM Operation Mode type. More...

## ESM Error Output Mode type
#define | SDL_ESM_LVL_PINOUT 0x0u
#define | SDL_ESM_PWM_PINOUT 0xFu
typedef uint32_t | esmErrOutMode_t
| ESM Error Output Mode type. More...

## ESM Interrupt Type to select level for interrupt.
#define | ESM_INTR_TYPE_CONFIG_ERROR (0x0u)
#define | ESM_INTR_TYPE_LOW_PRIO_ERROR (0x1u)
#define | ESM_INTR_TYPE_HIGH_PRIO_ERROR (0x2u)
typedef uint32_t | esmIntrType_t

## ESM Interrupt Priority Levels
#define | ESM_INTR_PRIORITY_LEVEL_LOW (0x0u)
#define | ESM_INTR_PRIORITY_LEVEL_HIGH (0x1u)
typedef uint32_t | esmIntrPriorityLvl_t

## Data Structures
struct | esmRevisionId_t
| Structure for accessing Revision ID of ESM module. More...
struct | esmInfo_t
| Structure for accessing information register of ESM module. More...
struct | esmGroupIntrStatus_t
| Structure to access the status of interrupts belonging to a High or Low priority interrupt. More...
struct | SDL_esmRegs_ERR_GRP_STATIC
| ESM Error Group static registers list. More...
struct | SDL_ESM_staticRegs
| ESM static registers list. More...

## Macros
#define | ESM_NUMBER_OF_GROUP_REGS (32u)
| ESM Operation Mode type. More...

## Functions
int32_t | SDL_ESM_setMode (uint32_t baseAddr, esmOperationMode_t mode)
| This API is used to configure operation mode of ESM module. More...
int32_t | SDL_ESM_getPinMode (uint32_t baseAddr, esmOperationMode_t *pMode)
| This API is used to read operation mode of ESM module. More...
int32_t | SDL_ESM_getErrorOutMode (uint32_t baseAddr, esmOperationMode_t *pMode)
| This API is used to read Error Out mode (LVL or PWM) of ESM module. More...
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. More...
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. More...
int32_t | SDL_ESM_setErrPinLowTimePreload (uint32_t baseAddr, uint32_t lowTime)
| This API is used to configure the low time counter pre-load value. More...
int32_t | SDL_ESM_PWML_setErrPinLowTimePreload (uint32_t baseAddr, uint32_t lowTime)
| This API is used to configure the low time counter pre-load value for PWM error. More...
int32_t | SDL_ESM_PWMH_setErrPinHighTimePreload (uint32_t baseAddr, uint32_t highTime)
| This API is used to configure the high time counter pre-load value for PWM error. More...
int32_t | SDL_ESM_getErrPinLowTimePreload (uint32_t baseAddr, uint32_t *pLowTime)
| This API is used to read the low time counter pre-load value. More...
int32_t | SDL_ESM_PWML_getErrPinLowTimePreload (uint32_t baseAddr, uint32_t *pPinPWMLCntrPre)
| This API is used to read the low time counter pre-load value for PWM error. More...
int32_t | SDL_ESM_PWMH_getErrPinHighTimePreload (uint32_t baseAddr, uint32_t *pPinPWMHCntrPre)
| This API is used to read the High time counter pre-load value for PWM error. More...
int32_t | SDL_ESM_getCurrErrPinLowTimeCnt (uint32_t baseAddr, uint32_t *pPinCntrPre)
| This API is used to get the current value of low time counter. More...
int32_t | SDL_ESM_PWML_getCurrErrPinLowTimeCnt (uint32_t baseAddr, uint32_t *pLowPWMLTime)
| This API is used to get the current value of low time counter for PWM error. More...
int32_t | SDL_ESM_PWMH_getCurrErrPinHighTimeCnt (uint32_t baseAddr, uint32_t *pHighPWMHTime)
| This API is used to get the current value of high time counter for PWM error. More...
int32_t | SDL_ESM_getErrPinStatus (uint32_t baseAddr, uint32_t *pStatus)
| This API is used to get the current status of nERROR pin. More...
int32_t | SDL_ESM_resetErrPin (uint32_t baseAddr)
| This API is used to reset the nERROR pin. More...
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. More...
int32_t | SDL_ESM_isEnableIntr (uint32_t baseAddr, uint32_t intrSrc, uint32_t *pEnStatus)
| This API is used check if interrupt is enabled/disabled. More...
int32_t | SDL_ESM_disableCfgIntr (uint32_t baseAddr, uint32_t intrNum)
| This API is used to disable the configuration interrupt. More...
int32_t | SDL_ESM_enableCfgIntr (uint32_t baseAddr, uint32_t group)
| This API is used to enable the configuration interrupt. More...
int32_t | SDL_ESM_enableIntr (uint32_t baseAddr, uint32_t intrNum)
| This API is used to enable interrupt. More...
int32_t | SDL_ESM_disableIntr (uint32_t baseAddr, uint32_t intrNum)
| This API is used to disable interrupt. More...
int32_t | SDL_ESM_setIntrPriorityLvl (uint32_t baseAddr, uint32_t intrSrc, esmIntrPriorityLvl_t intrPriorityLvl)
| This API is used to set interrupt level. More...
int32_t | SDL_ESM_getIntrPriorityLvl (uint32_t baseAddr, uint32_t intrSrc, esmIntrPriorityLvl_t *pIntrPriorityLvl)
| This API is used to get interrupt level. More...
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. More...
int32_t | SDL_ESM_getIntrStatus (uint32_t baseAddr, uint32_t intrSrc, uint32_t *pStaus)
| This API is used to get the interrupt status. More...
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. More...
int32_t | SDL_ESM_setIntrStatusRAW (uint32_t baseAddr, uint32_t intrSrc)
| This API is used to set the interrupt RAW status. More...
int32_t | SDL_ESM_getIntrStatusRAW (uint32_t baseAddr, uint32_t intrSrc, uint32_t *pStatus)
| This API is used to get the interrupt RAW status. More...
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 interrupt for pulse as well as for level interrupts. More...
int32_t | SDL_ESM_clearCfgIntrStatus (uint32_t baseAddr, uint32_t group)
| This API is used to clear the configuration interrupt status. More...
int32_t | SDL_ESM_clearIntrStatus (uint32_t baseAddr, uint32_t intrSrc)
| This API is used to clear the interrupt status. More...
int32_t | SDL_ESM_writeEOI (uint32_t baseAddr, esmIntrType_t intrType)
| This API is used to write EOI. More...
int32_t | SDL_ESM_getRevisionId (uint32_t baseAddr, esmRevisionId_t *pRevId)
| This API is used get the ESM revision ID. More...
int32_t | SDL_ESM_getInfo (uint32_t baseAddr, esmInfo_t *pInfo)
| This API is used read the ESM information register. More...
int32_t | SDL_ESM_getGlobalIntrEnabledStatus (uint32_t baseAddr, uint32_t *pStatus)
| This API is used read the ESM information register. More...
int32_t | SDL_ESM_enableGlobalIntr (uint32_t baseAddr)
| This API is used to enable Global control of interrupt. More...
int32_t | SDL_ESM_disableGlobalIntr (uint32_t baseAddr)
| This API is used to disable Global control of interrupt. More...
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. More...
int32_t | SDL_ESM_enableCriticalIntr (uint32_t baseAddr, uint32_t intrNum)
| This API is used to enable critical interrupt. More...
int32_t | SDL_ESM_setCriticalIntrDelay (uint32_t baseAddr, uint32_t delay)
| This API is used to set delay for critical interrupt. More...
int32_t | SDL_ESM_isEnableCriticalIntr (uint32_t baseAddr, uint32_t intrSrc, uint32_t *pEnStatus)
| This API is used check if critical interrupt is enabled/disabled. More...
int32_t | SDL_ESM_disableCriticalIntr (uint32_t baseAddr, uint32_t intrNum)
| This API is used to disable critical interrupt. More...