diff mbox series

[U-Boot] arm64: show_regs: Dump the LRs HW values

Message ID 20180220233008.30808-1-karl.beldan+oss@gmail.com
State Accepted
Commit fa7b8eae7c5047210fd5979d8167c07c471aae35
Delegated to: Tom Rini
Headers show
Series [U-Boot] arm64: show_regs: Dump the LRs HW values | expand

Commit Message

Karl Beldan Feb. 20, 2018, 11:30 p.m. UTC
These were dropped in [1], after relocation, for their values offset by
reloc_off.
Unconditionally show the HW values and add a '(reloc)' hint for the
offset values showed after relocation.
Also, the LRs' dumps are now formatted the same way the other regs' are.

[1] Commit 082693f4 ("arm64 :show_regs: show the address before relocation")

Signed-off-by: Karl Beldan <karl.beldan+oss@gmail.com>
---
 arch/arm/lib/interrupts_64.c | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)

Comments

Tom Rini Feb. 23, 2018, 6:04 p.m. UTC | #1
On Tue, Feb 20, 2018 at 11:30:08PM +0000, Karl Beldan wrote:

> These were dropped in [1], after relocation, for their values offset by
> reloc_off.
> Unconditionally show the HW values and add a '(reloc)' hint for the
> offset values showed after relocation.
> Also, the LRs' dumps are now formatted the same way the other regs' are.
> 
> [1] Commit 082693f4 ("arm64 :show_regs: show the address before relocation")
> 
> Signed-off-by: Karl Beldan <karl.beldan+oss@gmail.com>

Applied to u-boot/master, thanks!
diff mbox series

Patch

diff --git a/arch/arm/lib/interrupts_64.c b/arch/arm/lib/interrupts_64.c
index cbcfeec2b0..8a5d82468b 100644
--- a/arch/arm/lib/interrupts_64.c
+++ b/arch/arm/lib/interrupts_64.c
@@ -30,13 +30,12 @@  void show_regs(struct pt_regs *regs)
 {
 	int i;
 
-	if (gd->flags & GD_FLG_RELOC) {
-		printf("ELR:     %lx\n", regs->elr - gd->reloc_off);
-		printf("LR:      %lx\n", regs->regs[30] - gd->reloc_off);
-	} else {
-		printf("ELR:     %lx\n", regs->elr);
-		printf("LR:      %lx\n", regs->regs[30]);
-	}
+	if (gd->flags & GD_FLG_RELOC)
+		printf("elr: %016lx lr : %016lx (reloc)\n",
+		       regs->elr - gd->reloc_off,
+		       regs->regs[30] - gd->reloc_off);
+	printf("elr: %016lx lr : %016lx\n", regs->elr, regs->regs[30]);
+
 	for (i = 0; i < 29; i += 2)
 		printf("x%-2d: %016lx x%-2d: %016lx\n",
 		       i, regs->regs[i], i+1, regs->regs[i+1]);