* [U-Boot] [PATCH] arm64 :show_regs: show the address before relocation @ 2017-11-28 2:08 Peng Fan 2017-11-28 5:00 ` Simon Glass ` (2 more replies) 0 siblings, 3 replies; 7+ messages in thread From: Peng Fan @ 2017-11-28 2:08 UTC (permalink / raw) To: u-boot 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: Peng Fan <peng.fan@nxp.com> --- arch/arm/lib/interrupts_64.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/arch/arm/lib/interrupts_64.c b/arch/arm/lib/interrupts_64.c index 7c9cfce69f..cbcfeec2b0 100644 --- a/arch/arm/lib/interrupts_64.c +++ b/arch/arm/lib/interrupts_64.c @@ -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]); -- 2.14.1 ^ permalink raw reply related [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH] arm64 :show_regs: show the address before relocation 2017-11-28 2:08 [U-Boot] [PATCH] arm64 :show_regs: show the address before relocation Peng Fan @ 2017-11-28 5:00 ` Simon Glass 2017-12-04 18:36 ` [U-Boot] " Tom Rini 2018-01-22 19:01 ` [U-Boot] [PATCH] " Karl Beldan 2 siblings, 0 replies; 7+ messages in thread From: Simon Glass @ 2017-11-28 5:00 UTC (permalink / raw) To: u-boot On 27 November 2017 at 19:08, Peng Fan <peng.fan@nxp.com> wrote: > 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: Peng Fan <peng.fan@nxp.com> > --- > arch/arm/lib/interrupts_64.c | 10 ++++++++-- > 1 file changed, 8 insertions(+), 2 deletions(-) Reviewed-by: Simon Glass <sjg@chromium.org> ^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot] arm64 :show_regs: show the address before relocation 2017-11-28 2:08 [U-Boot] [PATCH] arm64 :show_regs: show the address before relocation Peng Fan 2017-11-28 5:00 ` Simon Glass @ 2017-12-04 18:36 ` Tom Rini 2018-01-22 19:01 ` [U-Boot] [PATCH] " Karl Beldan 2 siblings, 0 replies; 7+ messages in thread From: Tom Rini @ 2017-12-04 18:36 UTC (permalink / raw) To: u-boot On Tue, Nov 28, 2017 at 10:08:08AM +0800, Peng Fan wrote: > 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: Peng Fan <peng.fan@nxp.com> > Reviewed-by: Simon Glass <sjg@chromium.org> Applied to u-boot/master, thanks! -- Tom -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 819 bytes Desc: not available URL: <http://lists.denx.de/pipermail/u-boot/attachments/20171204/765b4aa2/attachment.sig> ^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH] arm64 :show_regs: show the address before relocation 2017-11-28 2:08 [U-Boot] [PATCH] arm64 :show_regs: show the address before relocation Peng Fan 2017-11-28 5:00 ` Simon Glass 2017-12-04 18:36 ` [U-Boot] " Tom Rini @ 2018-01-22 19:01 ` Karl Beldan 2018-02-04 13:39 ` Simon Glass 2 siblings, 1 reply; 7+ messages in thread From: Karl Beldan @ 2018-01-22 19:01 UTC (permalink / raw) To: u-boot On Tue, Nov 28, 2017 at 10:08:08AM +0800, Peng Fan wrote: > 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: Peng Fan <peng.fan@nxp.com> > --- > arch/arm/lib/interrupts_64.c | 10 ++++++++-- > 1 file changed, 8 insertions(+), 2 deletions(-) > > diff --git a/arch/arm/lib/interrupts_64.c b/arch/arm/lib/interrupts_64.c > index 7c9cfce69f..cbcfeec2b0 100644 > --- a/arch/arm/lib/interrupts_64.c > +++ b/arch/arm/lib/interrupts_64.c > @@ -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]); Hi, It is useful to show the relocated address, the kind of local mods I too have had for a while. But here you dropped the hw register values altogether, instead of displaying both, which I guess I am not the only one to not be happy about. Regards, Karl ^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH] arm64 :show_regs: show the address before relocation 2018-01-22 19:01 ` [U-Boot] [PATCH] " Karl Beldan @ 2018-02-04 13:39 ` Simon Glass 2018-02-06 0:40 ` Karl Beldan 0 siblings, 1 reply; 7+ messages in thread From: Simon Glass @ 2018-02-04 13:39 UTC (permalink / raw) To: u-boot Hi, On 22 January 2018 at 12:01, Karl Beldan <karl.beldan@gmail.com> wrote: > > On Tue, Nov 28, 2017 at 10:08:08AM +0800, Peng Fan wrote: > > 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: Peng Fan <peng.fan@nxp.com> > > --- > > arch/arm/lib/interrupts_64.c | 10 ++++++++-- > > 1 file changed, 8 insertions(+), 2 deletions(-) > > > > diff --git a/arch/arm/lib/interrupts_64.c b/arch/arm/lib/interrupts_64.c > > index 7c9cfce69f..cbcfeec2b0 100644 > > --- a/arch/arm/lib/interrupts_64.c > > +++ b/arch/arm/lib/interrupts_64.c > > @@ -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]); > > Hi, > > It is useful to show the relocated address, the kind of local mods I too > have had for a while. > But here you dropped the hw register values altogether, instead of > displaying both, which I guess I am not the only one to not be happy > about. Yes I agree that we should have both. Do you think you could do a patch? Regards, Simon ^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH] arm64 :show_regs: show the address before relocation 2018-02-04 13:39 ` Simon Glass @ 2018-02-06 0:40 ` Karl Beldan 2018-02-06 2:06 ` Tom Rini 0 siblings, 1 reply; 7+ messages in thread From: Karl Beldan @ 2018-02-06 0:40 UTC (permalink / raw) To: u-boot On Sun, Feb 4, 2018 at 1:39 PM, Simon Glass <sjg@chromium.org> wrote: > Hi, > > On 22 January 2018 at 12:01, Karl Beldan <karl.beldan@gmail.com> wrote: >> >> On Tue, Nov 28, 2017 at 10:08:08AM +0800, Peng Fan wrote: >> > 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: Peng Fan <peng.fan@nxp.com> >> > --- >> > arch/arm/lib/interrupts_64.c | 10 ++++++++-- >> > 1 file changed, 8 insertions(+), 2 deletions(-) >> > >> > diff --git a/arch/arm/lib/interrupts_64.c b/arch/arm/lib/interrupts_64.c >> > index 7c9cfce69f..cbcfeec2b0 100644 >> > --- a/arch/arm/lib/interrupts_64.c >> > +++ b/arch/arm/lib/interrupts_64.c >> > @@ -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]); >> >> Hi, >> >> It is useful to show the relocated address, the kind of local mods I too >> have had for a while. >> But here you dropped the hw register values altogether, instead of >> displaying both, which I guess I am not the only one to not be happy >> about. > > Yes I agree that we should have both. Do you think you could do a patch? > Hi, Peng did reply with a patch[1], I was bugged by the formatting but no follow-up ensued, so unclear whether it felt annoying on anybody's side. Anyways sure, if the thread stalls for a few more days, I'll make sure to send a patch. [1] https://marc.info/?l=u-boot&m=151674072412633&w=2 Regards, Karl ^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH] arm64 :show_regs: show the address before relocation 2018-02-06 0:40 ` Karl Beldan @ 2018-02-06 2:06 ` Tom Rini 0 siblings, 0 replies; 7+ messages in thread From: Tom Rini @ 2018-02-06 2:06 UTC (permalink / raw) To: u-boot On Tue, Feb 06, 2018 at 12:40:39AM +0000, Karl Beldan wrote: > On Sun, Feb 4, 2018 at 1:39 PM, Simon Glass <sjg@chromium.org> wrote: > > Hi, > > > > On 22 January 2018 at 12:01, Karl Beldan <karl.beldan@gmail.com> wrote: > >> > >> On Tue, Nov 28, 2017 at 10:08:08AM +0800, Peng Fan wrote: > >> > 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: Peng Fan <peng.fan@nxp.com> > >> > --- > >> > arch/arm/lib/interrupts_64.c | 10 ++++++++-- > >> > 1 file changed, 8 insertions(+), 2 deletions(-) > >> > > >> > diff --git a/arch/arm/lib/interrupts_64.c b/arch/arm/lib/interrupts_64.c > >> > index 7c9cfce69f..cbcfeec2b0 100644 > >> > --- a/arch/arm/lib/interrupts_64.c > >> > +++ b/arch/arm/lib/interrupts_64.c > >> > @@ -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]); > >> > >> Hi, > >> > >> It is useful to show the relocated address, the kind of local mods I too > >> have had for a while. > >> But here you dropped the hw register values altogether, instead of > >> displaying both, which I guess I am not the only one to not be happy > >> about. > > > > Yes I agree that we should have both. Do you think you could do a patch? > > Hi, > > Peng did reply with a patch[1], I was bugged by the formatting but no > follow-up ensued, so unclear whether it felt annoying on anybody's side. > Anyways sure, if the thread stalls for a few more days, I'll make sure > to send a patch. > > [1] https://marc.info/?l=u-boot&m=151674072412633&w=2 For the record, I took your objects as "Changes still Requested" to the patch and I think/hope in patchwork I marked it as such. -- Tom -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 819 bytes Desc: not available URL: <http://lists.denx.de/pipermail/u-boot/attachments/20180205/3346129a/attachment.sig> ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2018-02-06 2:06 UTC | newest] Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2017-11-28 2:08 [U-Boot] [PATCH] arm64 :show_regs: show the address before relocation Peng Fan 2017-11-28 5:00 ` Simon Glass 2017-12-04 18:36 ` [U-Boot] " Tom Rini 2018-01-22 19:01 ` [U-Boot] [PATCH] " Karl Beldan 2018-02-04 13:39 ` Simon Glass 2018-02-06 0:40 ` Karl Beldan 2018-02-06 2:06 ` Tom Rini
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.