avr32: Print unrelocated PC on exception
authorHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
Thu, 12 Aug 2010 06:52:52 +0000 (13:52 +0700)
committerReinhard Meyer <u-boot@emk-elektronik.de>
Fri, 3 Sep 2010 13:12:42 +0000 (15:12 +0200)
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

index dc9c300..b21ef1f 100644 (file)
@@ -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: