RMU - Reset Management Unit#

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.

Enumerations#

enum
rmuResetModeDisabled = 0
rmuResetModeEnabled = 1
}

RMU reset modes.

enum
rmuResetWdog0 = _EMU_RSTCTRL_WDOG0RMODE_MASK
rmuResetSys = _EMU_RSTCTRL_SYSRMODE_MASK
rmuResetCoreLockup = _EMU_RSTCTRL_LOCKUPRMODE_MASK
rmuResetAVDD = _EMU_RSTCTRL_AVDDBODRMODE_MASK
rmuResetIOVDD0 = _EMU_RSTCTRL_IOVDD0BODRMODE_MASK
rmuResetDecouple = _EMU_RSTCTRL_DECBODRMODE_MASK
}

RMU controlled peripheral reset control and reset source control.

Functions#

void
RMU_ResetControl(RMU_Reset_TypeDef reset, RMU_ResetMode_TypeDef mode)

Disable/enable reset for various peripherals and signal sources.

void

Clear the reset cause register.

uint32_t

Get the cause of the last reset.

Macros#

#define

RMU_LockupResetDisable kept for backwards compatibility.

Enumeration Documentation#

RMU_ResetMode_TypeDef#

RMU_ResetMode_TypeDef

RMU reset modes.

Enumerator
rmuResetModeDisabled

Reset mode disabled.

rmuResetModeEnabled

Reset mode enabled.


Definition at line 54 of file platform/emlib/inc/em_rmu.h

RMU_Reset_TypeDef#

RMU_Reset_TypeDef

RMU controlled peripheral reset control and reset source control.

Enumerator
rmuResetWdog0

WDOG0 reset select.

rmuResetSys

SYSRESET select.

rmuResetCoreLockup

Cortex lockup reset select.

rmuResetAVDD

AVDD monitoring select.

rmuResetIOVDD0

IOVDD0 monitoring select.

rmuResetDecouple

Decouple monitoring select.


Definition at line 70 of file platform/emlib/inc/em_rmu.h

Function Documentation#

RMU_ResetControl#

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 242 of file platform/emlib/src/em_rmu.c

RMU_ResetCauseClear#

void RMU_ResetCauseClear (void )

Clear the reset cause register.

Parameters
N/A

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 270 of file platform/emlib/src/em_rmu.c

RMU_ResetCauseGet#

uint32_t RMU_ResetCauseGet (void )

Get the cause of the last reset.

Parameters
N/A

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 313 of file platform/emlib/src/em_rmu.c

Macro Definition Documentation#

RMU_LockupResetDisable#

#define RMU_LockupResetDisable
Value:
(A)

RMU_LockupResetDisable kept for backwards compatibility.


Definition at line 135 of file platform/emlib/inc/em_rmu.h