Module Name:    src
Committed By:   matt
Date:           Fri Sep 21 22:12:36 UTC 2012

Modified Files:
        src/sys/arch/arm/arm32: db_machdep.c
        src/sys/arch/arm/include/arm32: db_machdep.h

Log Message:
Add a 'mach fault' command to print DFAR/DFSR/IFAR/IFSR/TTBR


To generate a diff of this commit:
cvs rdiff -u -r1.14 -r1.15 src/sys/arch/arm/arm32/db_machdep.c
cvs rdiff -u -r1.5 -r1.6 src/sys/arch/arm/include/arm32/db_machdep.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/arm/arm32/db_machdep.c
diff -u src/sys/arch/arm/arm32/db_machdep.c:1.14 src/sys/arch/arm/arm32/db_machdep.c:1.15
--- src/sys/arch/arm/arm32/db_machdep.c:1.14	Fri Aug 31 11:52:39 2012
+++ src/sys/arch/arm/arm32/db_machdep.c	Fri Sep 21 22:12:35 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: db_machdep.c,v 1.14 2012/08/31 11:52:39 skrll Exp $	*/
+/*	$NetBSD: db_machdep.c,v 1.15 2012/09/21 22:12:35 matt Exp $	*/
 
 /* 
  * Copyright (c) 1996 Mark Brinicombe
@@ -29,7 +29,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: db_machdep.c,v 1.14 2012/08/31 11:52:39 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: db_machdep.c,v 1.15 2012/09/21 22:12:35 matt Exp $");
 
 #include <sys/param.h>
 #include <sys/proc.h>
@@ -91,6 +91,9 @@ const struct db_command db_machine_comma
 	{ DDB_ADD_CMD("panic",	db_show_panic_cmd,	0,
 			"Displays the last panic string",
 		     	NULL,NULL) },
+	{ DDB_ADD_CMD("fault",	db_show_fault_cmd,	0,
+			"Displays the fault registers",
+		     	NULL,NULL) },
 #endif
 #ifdef ARM32_DB_COMMANDS
 	ARM32_DB_COMMANDS,
@@ -135,6 +138,15 @@ db_show_panic_cmd(db_expr_t addr, bool h
 	db_printf("Panic string: %s\n", panicstr);
 	(void)splx(s);
 }
+
+void
+db_show_fault_cmd(db_expr_t addr, bool have_addr, db_expr_t count, const char *modif)
+{
+	db_printf("DFAR=%#x DFSR=%#x IFAR=%#x IFSR=%#x TTBR=%#x\n",
+	    armreg_dfar_read(), armreg_dfsr_read(),
+	    armreg_ifar_read(), armreg_ifsr_read(),
+	    armreg_ttbr_read());
+}
 #endif
 
 

Index: src/sys/arch/arm/include/arm32/db_machdep.h
diff -u src/sys/arch/arm/include/arm32/db_machdep.h:1.5 src/sys/arch/arm/include/arm32/db_machdep.h:1.6
--- src/sys/arch/arm/include/arm32/db_machdep.h:1.5	Sat Mar 14 14:45:55 2009
+++ src/sys/arch/arm/include/arm32/db_machdep.h	Fri Sep 21 22:12:36 2012
@@ -1,4 +1,4 @@
-/* $NetBSD: db_machdep.h,v 1.5 2009/03/14 14:45:55 dsl Exp $ */
+/* $NetBSD: db_machdep.h,v 1.6 2012/09/21 22:12:36 matt Exp $ */
 
 #ifndef _ARM32_DB_MACHDEP_H_
 #define _ARM32_DB_MACHDEP_H_
@@ -7,5 +7,6 @@
 
 void db_show_panic_cmd(db_expr_t, bool, db_expr_t, const char *);
 void db_show_frame_cmd(db_expr_t, bool, db_expr_t, const char *);
+void db_show_fault_cmd(db_expr_t, bool, db_expr_t, const char *);
 
 #endif

Reply via email to