aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRobin Getz <robin.getz@analog.com>2010-03-29 10:07:33 -0400
committerMike Frysinger <vapier@gentoo.org>2010-05-22 14:19:07 -0400
commita80d5f449d1794d8e402f28cf3e1e9b57cb9f2d4 (patch)
tree72d01ce134703d40197a6c66b5c5811fdc717f59
parenta6d9dbf5e4daaf21b33917a809a5ac1e7bce9e05 (diff)
Blackfin: handle HW errors in the new "FAULT" printing code
Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
-rw-r--r--arch/blackfin/kernel/trace.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/arch/blackfin/kernel/trace.c b/arch/blackfin/kernel/trace.c
index 317d4273ca60..59fcdf6b0138 100644
--- a/arch/blackfin/kernel/trace.c
+++ b/arch/blackfin/kernel/trace.c
@@ -672,6 +672,15 @@ void dump_bfin_trace_buffer(void)
672 * the trace buffer, (since it doesn't commit), so 672 * the trace buffer, (since it doesn't commit), so
673 * we print out the fault address here 673 * we print out the fault address here
674 */ 674 */
675 if (!fault && addr == ((unsigned short *)evt_ivhw)) {
676 addr = (unsigned short *)bfin_read_TBUF();
677 decode_address(buf, (unsigned long)addr);
678 pr_notice(" FAULT : %s ", buf);
679 decode_instruction(addr);
680 pr_cont("\n");
681 fault = 1;
682 continue;
683 }
675 if (!fault && addr == (unsigned short *)trap && 684 if (!fault && addr == (unsigned short *)trap &&
676 (cpu_pda[cpu].seqstat & SEQSTAT_EXCAUSE) > VEC_EXCPT15) { 685 (cpu_pda[cpu].seqstat & SEQSTAT_EXCAUSE) > VEC_EXCPT15) {
677 decode_address(buf, cpu_pda[cpu].icplb_fault_addr); 686 decode_address(buf, cpu_pda[cpu].icplb_fault_addr);