RMUEMLIB

Detailed Description

Reset Management Unit (RMU) Peripheral API.

This module contains functions to control the RMU peripheral of Silicon Labs 32-bit MCUs and SoCs. RMU ensures correct reset operation and is responsible for connecting the different reset sources to the reset lines of the MCU or SoC.

Macros

#define RMU_LockupResetDisable(A)   RMU_ResetControl(rmuResetLockUp, A)
 

Enumerations

enum  RMU_Reset_TypeDef { rmuResetLockUp = _RMU_CTRL_LOCKUPRDIS_MASK }
 
enum  RMU_ResetMode_TypeDef {
  rmuResetModeClear = 0,
  rmuResetModeSet = 1
}
 

Functions

void RMU_ResetCauseClear (void)
 Clear the reset cause register.
 
uint32_t RMU_ResetCauseGet (void)
 Get the cause of the last reset.
 
void RMU_ResetControl (RMU_Reset_TypeDef reset, RMU_ResetMode_TypeDef mode)
 Disable/enable reset for various peripherals and signal sources.
 

Macro Definition Documentation

#define RMU_LockupResetDisable (   A)    RMU_ResetControl(rmuResetLockUp, A)

RMU_LockupResetDisable kept for backwards compatibility.

Definition at line 102 of file em_rmu.h.

Enumeration Type Documentation

RMU controlled peripheral reset control and reset source control.

Enumerator
rmuResetLockUp 

Cortex lockup reset select.

Definition at line 74 of file em_rmu.h.

RMU reset modes.

Definition at line 61 of file em_rmu.h.

Function Documentation

void RMU_ResetCauseClear ( void  )

Clear the reset cause register.

This function clears all the reset cause bits of the RSTCAUSE register. The reset cause bits must be cleared by software before a new reset occurs. Otherwise, reset causes may accumulate. See RMU_ResetCauseGet().

Definition at line 261 of file em_rmu.c.

References _EMU_AUXCTRL_HRCCLR_SHIFT, BUS_RegBitWrite(), EMU, EMU_Lock(), EMU_LOCK_LOCKKEY_LOCKED, EMU_Unlock(), RMU, and RMU_CMD_RCCLR.

Referenced by SLEEP_Init().

uint32_t RMU_ResetCauseGet ( void  )

Get the cause of the last reset.

To be useful, the reset cause must be cleared by software before a new reset occurs. Otherwise, reset causes may accumulate. See RMU_ResetCauseClear(). This function call will return the main cause for reset, which can be a bit mask (several causes) and clear away "noise".

Returns
A reset cause mask. See the reference manual for a description of the reset cause mask.

Definition at line 300 of file em_rmu.c.

References EMU_BASE, RMU, RMU_RSTCAUSE_EM4RST, RMU_RSTCAUSE_EXTRST, RMU_RSTCAUSE_LOCKUPRST, RMU_RSTCAUSE_SYSREQRST, and RMU_RSTCAUSE_WDOGRST.

Referenced by SLEEP_Init().

void RMU_ResetControl ( RMU_Reset_TypeDef  reset,
RMU_ResetMode_TypeDef  mode 
)

Disable/enable reset for various peripherals and signal sources.

Parameters
[in]resetReset types to enable/disable.s
[in]modeReset mode.

Definition at line 235 of file em_rmu.c.

References BUS_RegBitWrite(), RMU, and SL_CTZ().