ARM: i.MX: provide access to reset cause through get_imx_reset_cause()

Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
This commit is contained in:
Eric Nelson 2015-02-15 14:37:21 -07:00 committed by Stefano Babic
parent fb2589b330
commit 11c2e505c4
2 changed files with 11 additions and 1 deletions

View file

@ -24,13 +24,16 @@
#include <fsl_esdhc.h>
#endif
char *get_reset_cause(void)
static u32 reset_cause = -1;
static char *get_reset_cause(void)
{
u32 cause;
struct src *src_regs = (struct src *)SRC_BASE_ADDR;
cause = readl(&src_regs->srsr);
writel(cause, &src_regs->srsr);
reset_cause = cause;
switch (cause) {
case 0x00001:
@ -53,6 +56,11 @@ char *get_reset_cause(void)
}
}
u32 get_imx_reset_cause(void)
{
return reset_cause;
}
#if defined(CONFIG_MX53) || defined(CONFIG_MX6)
#if defined(CONFIG_MX53)
#define MEMCTL_BASE ESDCTL_BASE_ADDR

View file

@ -17,3 +17,5 @@
#define CS0_64M_CS1_64M 1
#define CS0_64M_CS1_32M_CS2_32M 2
#define CS0_32M_CS1_32M_CS2_32M_CS3_32M 3
u32 get_imx_reset_cause(void);