From e4295d41244ed11ba47c4e956de816cf1ad909cd Mon Sep 17 00:00:00 2001 From: =?utf8?q?Lothar=20Wa=C3=9Fmann?= Date: Fri, 9 Jan 2015 12:11:13 +0100 Subject: [PATCH] ARM: interrupts: print pre-reloc address only if U-Boot has been relocated --- arch/arm/lib/interrupts.c | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/arch/arm/lib/interrupts.c b/arch/arm/lib/interrupts.c index a122e74313..e0aef1b48e 100644 --- a/arch/arm/lib/interrupts.c +++ b/arch/arm/lib/interrupts.c @@ -109,11 +109,18 @@ void show_regs (struct pt_regs *regs) flags = condition_codes(regs); - printf ("pc : [<%08lx>] (pre-reloc: [<%08lx>]) lr : [<%08lx>]\n" - "sp : %08lx ip : %08lx fp : %08lx\n", - instruction_pointer(regs), - instruction_pointer(regs) - gd->reloc_off, - regs->ARM_lr, regs->ARM_sp, regs->ARM_ip, regs->ARM_fp); + if (gd->flags & GD_FLG_RELOC) + printf ("pc : [<%08lx>] (pre-reloc: [<%08lx>]) lr : [<%08lx>]\n" + "sp : %08lx ip : %08lx fp : %08lx\n", + instruction_pointer(regs), + instruction_pointer(regs) - gd->reloc_off, + regs->ARM_lr, regs->ARM_sp, + regs->ARM_ip, regs->ARM_fp); + else + printf ("pc : [<%08lx>] lr : [<%08lx>]\n" + "sp : %08lx ip : %08lx fp : %08lx\n", + instruction_pointer(regs), regs->ARM_lr, regs->ARM_sp, + regs->ARM_ip, regs->ARM_fp); printf ("r10: %08lx r9 : %08lx r8 : %08lx\n", regs->ARM_r10, regs->ARM_r9, regs->ARM_r8); printf ("r7 : %08lx r6 : %08lx r5 : %08lx r4 : %08lx\n", -- 2.39.2