mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-29 16:10:58 +00:00
MX5: factor out boot cause funciton to common code
factor out boot cause function to common code to avoid the duplicate code in each board support package Signed-off-by: Jason Liu <jason.hui@linaro.org>
This commit is contained in:
parent
a770975ab6
commit
7517a793f0
1 changed files with 28 additions and 0 deletions
|
@ -77,6 +77,33 @@ u32 get_cpu_rev(void)
|
||||||
return system_rev;
|
return system_rev;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
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);
|
||||||
|
|
||||||
|
switch (cause) {
|
||||||
|
case 0x00001:
|
||||||
|
return "POR";
|
||||||
|
case 0x00004:
|
||||||
|
return "CSU";
|
||||||
|
case 0x00008:
|
||||||
|
return "IPP USER";
|
||||||
|
case 0x00010:
|
||||||
|
return "WDOG";
|
||||||
|
case 0x00020:
|
||||||
|
return "JTAG HIGH-Z";
|
||||||
|
case 0x00040:
|
||||||
|
return "JTAG SW";
|
||||||
|
case 0x10000:
|
||||||
|
return "WARM BOOT";
|
||||||
|
default:
|
||||||
|
return "unknown reset";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#if defined(CONFIG_DISPLAY_CPUINFO)
|
#if defined(CONFIG_DISPLAY_CPUINFO)
|
||||||
int print_cpuinfo(void)
|
int print_cpuinfo(void)
|
||||||
|
@ -89,6 +116,7 @@ int print_cpuinfo(void)
|
||||||
(cpurev & 0x000F0) >> 4,
|
(cpurev & 0x000F0) >> 4,
|
||||||
(cpurev & 0x0000F) >> 0,
|
(cpurev & 0x0000F) >> 0,
|
||||||
mxc_get_clock(MXC_ARM_CLK) / 1000000);
|
mxc_get_clock(MXC_ARM_CLK) / 1000000);
|
||||||
|
printf("Reset cause: %s\n", get_reset_cause());
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in a new issue