39 #define ERM_CHANNELS_OFFSET_SIZE (4U)
41 #define ERM_NCE_START (30U)
43 #define ERM_SBC_START (31U)
65 #if defined(__cplusplus)
99 uint32_t tempCtrl = base->
CR0;
130 base->
CR0 = tempCtrl;
188 uint32_t retVal = 0U;
204 return (retVal & 1U) != 0U;
258 return base->
EARn[channel].
EAR;
273 uint32_t * addressPtr);
277 #if defined(__cplusplus)
static bool ERM_HAL_IsEventInterruptEnabled(const ERM_Type *const base, uint8_t channel, erm_ecc_event_t eccEvent)
Checks if the Memory n interrupt event is enabled.
static void ERM_HAL_EnableEventInterrupt(ERM_Type *const base, uint8_t channel, erm_ecc_event_t eccEvent, bool enable)
Enables Memory n interrupt event.
void ERM_HAL_Init(ERM_Type *const base)
Initializes the ERM module.
#define ERM_SBC_START
Start bit of single bit correction.
static uint32_t ERM_HAL_GetLastErrorAddress(const ERM_Type *const base, uint8_t channel)
Gets the address of the last ECC event in Memory n.
erm_ecc_event_t
ERM types of ECC events Implements : erm_ecc_event_t_Class.
#define ERM_CHANNELS_OFFSET_SIZE
The distance between channels.
static void ERM_HAL_ClearEvent(ERM_Type *const base, uint8_t channel, erm_ecc_event_t eccEvent)
Clears error event and the corresponding interrupt notification.
erm_ecc_event_t ERM_HAL_GetErrorDetail(const ERM_Type *const base, uint8_t channel, uint32_t *addressPtr)
Gets the address of the last ECC event in Memory n and ECC event.
static bool ERM_HAL_IsEventDetected(const ERM_Type *const base, uint8_t channel, erm_ecc_event_t eccEvent)
Checks if the Memory n error event is detected.
struct ERM_Type::@11 EARn[ERM_EARn_COUNT]
#define ERM_NCE_START
Start bit of non correctable error.