Patchwork [U-Boot,2/3] avr32: Print unrelocated PC on exception

login
register
mail settings
Submitter Haavard Skinnemoen
Date Aug. 2, 2010, 12:06 p.m.
Message ID <1280750789-10359-3-git-send-email-haavard.skinnemoen@atmel.com>
Download mbox | patch
Permalink /patch/71803/
State Accepted
Commit 8d1334a7877662c5b13205b399840196c7fa0aa4
Delegated to: Reinhard Meyer
Headers show

Comments

Haavard Skinnemoen - Aug. 2, 2010, 12:06 p.m.
In addition to the real PC value, also print the value of PC after
subtracting the relocation offset. This value will match the address in
the ELF file so it's much easier to figure out where things went wrong.

Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
---
 arch/avr32/cpu/exception.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

Patch

diff --git a/arch/avr32/cpu/exception.c b/arch/avr32/cpu/exception.c
index dc9c300..b21ef1f 100644
--- a/arch/avr32/cpu/exception.c
+++ b/arch/avr32/cpu/exception.c
@@ -59,7 +59,8 @@  void do_unknown_exception(unsigned int ecr, struct pt_regs *regs)
 {
 	unsigned int mode;
 
-	printf("\n *** Unhandled exception %u at PC=0x%08lx\n", ecr, regs->pc);
+	printf("\n *** Unhandled exception %u at PC=0x%08lx [%08lx]\n",
+			ecr, regs->pc, regs->pc - gd->reloc_off);
 
 	switch (ecr) {
 	case ECR_BUS_ERROR_WRITE: