cc2538: sys-ctrl: Provide last reset cause

Add functions providing the last reset cause, one as an integer (ID),
and one as a string.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
This commit is contained in:
Benoît Thébaudeau 2016-06-11 22:56:58 +02:00
parent 8e6c6cc45b
commit b3ea790449
2 changed files with 36 additions and 0 deletions

View file

@ -115,6 +115,11 @@
#define SYS_CTRL_CLOCK_STA_OSC32K_CALDIS 0x02000000
#define SYS_CTRL_CLOCK_STA_OSC32K 0x01000000
#define SYS_CTRL_CLOCK_STA_RST 0x00C00000
#define SYS_CTRL_CLOCK_STA_RST_S 22
#define SYS_CTRL_CLOCK_STA_RST_POR 0
#define SYS_CTRL_CLOCK_STA_RST_EXT 1
#define SYS_CTRL_CLOCK_STA_RST_WDT 2
#define SYS_CTRL_CLOCK_STA_RST_CLD_SW 3
#define SYS_CTRL_CLOCK_STA_SOURCE_CHANGE 0x00100000
#define SYS_CTRL_CLOCK_STA_XOSC_STB 0x00080000
#define SYS_CTRL_CLOCK_STA_HSOSC_STB 0x00040000
@ -302,6 +307,17 @@
/** \name SysCtrl functions
* @{
*/
/** \brief Gets the cause of the last reset
* \return A \c SYS_CTRL_CLOCK_STA_RST_x reset cause
*/
int sys_ctrl_get_reset_cause(void);
/** \brief Gets a string describing the cause of the last reset
* \return Last reset cause as a string
*/
const char *sys_ctrl_get_reset_cause_str(void);
/** \brief Initialises the System Control Driver. The main purpose of this
* function is to power up and select clocks and oscillators
* \note This function depends on ioc_init() having been called beforehand. */