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 = _RMU_CTRL_PINRMODE_DISABLED
rmuResetModeLimited = _RMU_CTRL_PINRMODE_LIMITED
rmuResetModeExtended = _RMU_CTRL_PINRMODE_EXTENDED
rmuResetModeFull = _RMU_CTRL_PINRMODE_FULL
}

RMU reset modes.

enum
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
}

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.

void
RMU_UserResetStateSet(uint32_t userState)

Set user reset state.

uint32_t

Get user reset state.

Macros#

#define

RMU_LockupResetDisable kept for backwards compatibility.

Enumeration Documentation#

RMU_ResetMode_TypeDef#

RMU_ResetMode_TypeDef

RMU reset modes.

Enumerator
rmuResetModeDisabled

Reset mode disabled.

rmuResetModeLimited

Reset mode limited.

rmuResetModeExtended

Reset mode extended.

rmuResetModeFull

Reset mode full.


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
rmuResetLockUp

Cortex lockup reset select.

rmuResetWdog

WDOG reset select.

rmuResetCoreLockup

Cortex lockup reset select.

rmuResetSys

SYSRESET select.

rmuResetPin

Pin reset 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 240 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 268 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 311 of file platform/emlib/src/em_rmu.c

RMU_UserResetStateSet#

void RMU_UserResetStateSet (uint32_t userState)

Set user reset state.

Parameters
[in]userState

User state to set

Reset only by a Power-on-reset and a pin reset.


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

RMU_UserResetStateGet#

uint32_t RMU_UserResetStateGet (void)

Get user reset state.

Parameters
N/A

Reset only by a Power-on-reset and a pin reset.

Returns

  • Reset surviving user state.


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

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