summaryrefslogtreecommitdiff
path: root/arch/avr32/cpu
diff options
context:
space:
mode:
authorHaavard Skinnemoen <haavard.skinnemoen@atmel.com>2010-08-12 13:52:52 +0700
committerReinhard Meyer <u-boot@emk-elektronik.de>2010-09-03 15:12:42 +0200
commit8d1334a7877662c5b13205b399840196c7fa0aa4 (patch)
tree8c55490a60dd485a53b8e3056795e3eeb874a3bc /arch/avr32/cpu
parentbd2313078114c4b44c4a5ce149af43bcb7fc8854 (diff)
avr32: Print unrelocated PC on exception
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>
Diffstat (limited to 'arch/avr32/cpu')
-rw-r--r--arch/avr32/cpu/exception.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/avr32/cpu/exception.c b/arch/avr32/cpu/exception.c
index dc9c3002a4..b21ef1f928 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: