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_LOCKUPRMODE_MASK, rmuResetWdog = _RMU_CTRL_WDOGRMODE_MASK, rmuResetCoreLockup = _RMU_CTRL_LOCKUPRMODE_MASK, rmuResetSys = _RMU_CTRL_SYSRMODE_MASK, rmuResetPin = _RMU_CTRL_PINRMODE_MASK } |
enum |
RMU_ResetMode_TypeDef
{
rmuResetModeDisabled = _RMU_CTRL_PINRMODE_DISABLED, rmuResetModeLimited = _RMU_CTRL_PINRMODE_LIMITED, rmuResetModeExtended = _RMU_CTRL_PINRMODE_EXTENDED, rmuResetModeFull = _RMU_CTRL_PINRMODE_FULL } |
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.
|
|
__STATIC_INLINE uint32_t | RMU_UserResetStateGet (void) |
Get user reset state. Reset only by a Power-on-reset and a pin reset.
|
|
__STATIC_INLINE void | RMU_UserResetStateSet (uint32_t userState) |
Set user reset state. Reset only by a Power-on-reset and a pin reset.
|
|
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
enum RMU_Reset_TypeDef |
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 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_AVDDBOD , RMU_RSTCAUSE_DECBOD , RMU_RSTCAUSE_DVDDBOD , 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] reset
Reset types to enable/disable.s [in] mode
Reset mode.
Definition at line
235
of file
em_rmu.c
.
References BUS_RegBitWrite() , RMU , and SL_CTZ() .
__STATIC_INLINE uint32_t RMU_UserResetStateGet | ( | void |
|
) |
Get user reset state. Reset only by a Power-on-reset and a pin reset.
- Returns
- Reset surviving user state.
Definition at line
130
of file
em_rmu.h
.
References _RMU_CTRL_RESETSTATE_MASK , _RMU_CTRL_RESETSTATE_SHIFT , and RMU .
__STATIC_INLINE void RMU_UserResetStateSet | ( | uint32_t |
userState
|
) |
Set user reset state. Reset only by a Power-on-reset and a pin reset.
- Parameters
-
[in] userState
User state to set
Definition at line
115
of file
em_rmu.h
.
References _RMU_CTRL_RESETSTATE_MASK , _RMU_CTRL_RESETSTATE_SHIFT , and RMU .