diff mbox

[U-Boot,2/2] MX31: mx31pdk: Print the cause of reset

Message ID 1299688544-13635-2-git-send-email-fabio.estevam@freescale.com
State Superseded
Delegated to: Stefano Babic
Headers show

Commit Message

Fabio Estevam March 9, 2011, 4:35 p.m. UTC
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
---
 board/freescale/mx31pdk/mx31pdk.c |   25 ++++++++++++++++++++++++-
 1 files changed, 24 insertions(+), 1 deletions(-)

Comments

Anatolij Gustschin March 12, 2011, 1:26 p.m. UTC | #1
On Wed, 9 Mar 2011 13:35:44 -0300
Fabio Estevam <fabio.estevam@freescale.com> wrote:
...
> +++ b/board/freescale/mx31pdk/mx31pdk.c
> @@ -86,7 +86,30 @@ int board_late_init(void)
>  
>  int checkboard(void)
>  {
> -	printf("Board: i.MX31 MAX PDK (3DS)\n");
> +	u32 cause;
> +	struct clock_control_regs *ccm =
> +		(struct clock_control_regs *)CCM_BASE;
> +	puts("Board: MX31PDK [");
> +
> +	cause = ccm->rcsr & 0x03;

The mask should be 0x07, since ...

> +	case 0x0006:
> +		puts("JTAG");
> +		break;

we check if bit 2 is set here.

Best regards,
Anatolij
diff mbox

Patch

diff --git a/board/freescale/mx31pdk/mx31pdk.c b/board/freescale/mx31pdk/mx31pdk.c
index 4a5d3ef..0462a22 100644
--- a/board/freescale/mx31pdk/mx31pdk.c
+++ b/board/freescale/mx31pdk/mx31pdk.c
@@ -86,7 +86,30 @@  int board_late_init(void)
 
 int checkboard(void)
 {
-	printf("Board: i.MX31 MAX PDK (3DS)\n");
+	u32 cause;
+	struct clock_control_regs *ccm =
+		(struct clock_control_regs *)CCM_BASE;
+	puts("Board: MX31PDK [");
+
+	cause = ccm->rcsr & 0x03;
+	switch (cause) {
+	case 0x0000:
+		puts("POR");
+		break;
+	case 0x0001:
+		puts("RST");
+		break;
+	case 0x0002:
+		puts("WDOG");
+		break;
+	case 0x0006:
+		puts("JTAG");
+		break;
+	default:
+		puts("unknown");
+	}
+
+	puts("]\n");
 	return 0;
 }