提交 082693f4 编写于 作者: P Peng Fan 提交者: Tom Rini

arm64 :show_regs: show the address before relocation

After relocation, when error happends, it is hard to track
ELR and LR with asm file objdumped from elf file.

So subtract the gd->reloc_off the reflect the compliation address.
Signed-off-by: NPeng Fan <peng.fan@nxp.com>
Reviewed-by: NSimon Glass <sjg@chromium.org>
上级 c7be3e5a
......@@ -9,6 +9,7 @@
#include <linux/compiler.h>
#include <efi_loader.h>
DECLARE_GLOBAL_DATA_PTR;
int interrupt_init(void)
{
......@@ -29,8 +30,13 @@ void show_regs(struct pt_regs *regs)
{
int i;
printf("ELR: %lx\n", regs->elr);
printf("LR: %lx\n", regs->regs[30]);
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]);
}
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]);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册