From: Robin Getz <robin.getz@analog.com>
Date: Mon, 29 Mar 2010 14:07:33 +0000 (+0000)
Subject: Blackfin: handle HW errors in the new "FAULT" printing code
X-Git-Tag: v2.6.35-rc1~410^2~13
X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=a80d5f449d1794d8e402f28cf3e1e9b57cb9f2d4;p=users%2Fjedix%2Flinux-maple.git

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>
---

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)
 			 * the trace buffer, (since it doesn't commit), so
 			 * we print out the fault address here
 			 */
+			if (!fault && addr == ((unsigned short *)evt_ivhw)) {
+				addr = (unsigned short *)bfin_read_TBUF();
+				decode_address(buf, (unsigned long)addr);
+				pr_notice("      FAULT : %s ", buf);
+				decode_instruction(addr);
+				pr_cont("\n");
+				fault = 1;
+				continue;
+			}
 			if (!fault && addr == (unsigned short *)trap &&
 				(cpu_pda[cpu].seqstat & SEQSTAT_EXCAUSE) > VEC_EXCPT15) {
 				decode_address(buf, cpu_pda[cpu].icplb_fault_addr);