Skip to contentSkip to conversation

README.arm-relocation: debugging options update

PATCH New Ben Gardiner 3 participants 7 messages Apr 28, 2011 – May 12, 2011

lore
Share & tools
lore
#0 lore raw

v3 cover README.arm-relocation: debugging options update

As Wolfgang pointed out, bdinfo can be used to get the relocation address so update the README to indicate that this can be done instead of suggesting that u-boot get rebuilt with debugging enabled.

Since gd is always addressable, descibe also a method whereby the relocation address is obtained from a it using gdb.

Ben Gardiner (2):
README.arm-relocation: get relocated address from bdinfo README.arm-relocation: get relocated address in gdb

 doc/README.arm-relocation |   61 ++++++++++++++++++++++-----------------------
 1 files changed, 30 insertions(+), 31 deletions(-)
#1 lore raw

PATCH v3 1/2 README.arm-relocation: get relocated address from bdinfo

The bdinfo command prints the relocaddr on ARM as it does on PPC.

Update the debugging instructions for arm relocation to reflect this fact rather than requiring that the user rebuild the u-boot image using -DDEBUG.

---

Changes since V1: none; introduced in V2

 doc/README.arm-relocation |   53 ++++++++++++++++++--------------------------
 1 files changed, 22 insertions(+), 31 deletions(-)
doc/README.arm-relocation +22 -31
index c0957c2..8bfb500 100644
@@ -106,13 +106,9 @@ TBC
 Debugging u-boot in RAM:
 (example on the qong board)
 
-a) add in config.mk:
-
-PLATFORM_CPPFLAGS += -DDEBUG
-
 -----------------
 
-b) start debugger
+a) start debugger
 
 arm-linux-gdb u-boot
 
@@ -130,7 +126,7 @@ The target architecture is set automatically (currently arm)
 
 -----------------
 
-c) connect to target
+b) connect to target
 
 target remote bdi10:2001
 
@@ -141,7 +137,7 @@ Remote debugging using bdi10:2001
 
 -----------------
 
-d) discard symbol-file
+c) discard symbol-file
 
 (gdb) symbol-file
 Discard symbol table from `/home/hs/celf/u-boot/u-boot'? (y or n) y
@@ -150,7 +146,7 @@ No symbol file now.
 
 -----------------
 
-e) load new symbol table:
+d) load new symbol table:
 
 (gdb) add-symbol-file u-boot 0x8ff08000
 add symbol table from file "u-boot" at
@@ -167,28 +163,23 @@ Program received signal SIGSTOP, Stopped (signal).
 
 add-symbol-file u-boot 0x8ff08000
 		       ^^^^^^^^^^
-		       get this address from u-boot debug printfs
-
-U-Boot 2010.06-rc2-00009-gf77b8b8-dirty (Jun 22 2010 - 09:43:46)
-
-U-Boot code: A0000000 -> A0058BAC  BSS: -> A0061F10
-CPU:   Freescale i.MX31 at 398 MHz
-Board: DAVE/DENX Qong
-mon: FFFFFFFF gd->monLen: 00061F10
-Top of RAM usable for U-Boot at: 90000000
-LCD panel info: 640 x 480, 16 bit/pix
-Reserving 600k for LCD Framebuffer at: 8ff6a000
-Reserving 391k for U-Boot at: 8ff08000
-			      ^^^^^^^^
-Reserving 1280k for malloc() at: 8fdc8000
-Reserving 24 Bytes for Board Info at: 8fdc7fe8
-Reserving 52 Bytes for Global Data at: 8fdc7fb4
-New Stack Pointer is: 8fdc7fb0
-RAM Configuration:
-Bank #0: 80000000 256 MiB
-relocation Offset is: eff08000
-mon: 00058BAC gd->monLen: 00061F10
-Now running in RAM - U-Boot at: 8ff08000
-				^^^^^^^^
+		       get this address from u-boot bdinfo command
+
+ => bdinfo
+rch_number = XXXXXXXXXX
+boot_params = XXXXXXXXXX
+DRAM bank   = XXXXXXXXXX
+-> start    = XXXXXXXXXX
+-> size     = XXXXXXXXXX
+ethaddr     = XXXXXXXXXX
+ip_addr     = XXXXXXXXXX
+baudrate    = XXXXXXXXXX
+TLB addr    = XXXXXXXXXX
+relocaddr   = 0x8ff08000
+              ^^^^^^^^^^
+reloc off   = XXXXXXXXXX
+irq_sp      = XXXXXXXXXX
+sp start    = XXXXXXXXXX
+FB base     = XXXXXXXXXX
 
 Now you can use gdb as usual :-)
Signature · 1 line
1.7.1
#2 lore raw

PATCH v3 1/2 README.arm-relocation: get relocated address from bdinfo

Hello Ben,

Quoted 10 lines · Ben Gardiner

The bdinfo command prints the relocaddr on ARM as it does on PPC.

Update the debugging instructions for arm relocation to reflect this fact rather than requiring that the user rebuild the u-boot image using -DDEBUG.

Quoted 6 lines

---

Changes since V1: none; introduced in V2

 doc/README.arm-relocation |   53 ++++++++++++++++++--------------------------
 1 files changed, 22 insertions(+), 31 deletions(-)

bye,
Heiko

Signature · 2 lines
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
#3 lore raw

PATCH v3 1/2 README.arm-relocation: get relocated address from bdinfo

In reply to Ben Gardiner

Dear Ben Gardiner,

Quoted 10 lines · In message <787a04417ee0eb01c6eb3a7a1edff7ee9a8f825e.1304024417.git.bengardiner…

The bdinfo command prints the relocaddr on ARM as it does on PPC.

Update the debugging instructions for arm relocation to reflect this fact rather than requiring that the user rebuild the u-boot image using -DDEBUG.

Quoted 6 lines

---

Changes since V1: none; introduced in V2

 doc/README.arm-relocation |   53 ++++++++++++++++++--------------------------
 1 files changed, 22 insertions(+), 31 deletions(-)

Applied, thanks.

Best regards,

Wolfgang Denk

Signature · 4 lines
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
"In matrimony, to hesitate is sometimes to be saved."        - Butler
#4 lore raw

PATCH v3 2/2 README.arm-relocation: get relocated address in gdb

In reply to Ben Gardiner

When your emulator is connected at reset (or is used to load u-boot) it is possible to get the relocation address from the gd->relocaddr since gd is always in r8 (on ARM) it is addressable before the gdb has remapped symbols.

Document this alternate method in-line with the original method written by Heiko Schocher.

CC Heiko Schocher <[email protected]>
CC Wolfgang Denk <[email protected]>

---
Changes since V2:
* add gd->relocaddr as a secondary method of obtaining the symbol-file gdb argument
Changes since V1:
* update to reflect proposed changes to existing debug instructions:
renumber steps, remove note about -DDEBUG

---
 doc/README.arm-relocation |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)
doc/README.arm-relocation +8 -0
index 8bfb500..45f5ea7 100644
@@ -164,6 +164,7 @@ Program received signal SIGSTOP, Stopped (signal).
 add-symbol-file u-boot 0x8ff08000
 		       ^^^^^^^^^^
 		       get this address from u-boot bdinfo command
+		       or get it from gd->relocaddr in gdb
 
  => bdinfo
 rch_number = XXXXXXXXXX
@@ -182,4 +183,11 @@ irq_sp      = XXXXXXXXXX
 sp start    = XXXXXXXXXX
 FB base     = XXXXXXXXXX
 
+or interrupt execution by any means and re-load the symbols at the location
+specified by gd->relocaddr -- this is only valid after board_init_f.
+
+(gdb) set $s = gd->relocaddr
+(gdb) symbol-file
+(gdb) add-symbol-file u-boot $s
+
 Now you can use gdb as usual :-)
Signature · 1 line
1.7.1
#5 lore raw

PATCH v3 2/2 README.arm-relocation: get relocated address in gdb

Hello Ben,

Quoted 19 lines · Ben Gardiner

When your emulator is connected at reset (or is used to load u-boot) it is possible to get the relocation address from the gd->relocaddr since gd is always in r8 (on ARM) it is addressable before the gdb has remapped symbols.

Document this alternate method in-line with the original method written by Heiko Schocher.

CC Heiko Schocher <[email protected]>
CC Wolfgang Denk <[email protected]>

---
Changes since V2:
* add gd->relocaddr as a secondary method of obtaining the symbol-file gdb argument
Changes since V1:
* update to reflect proposed changes to existing debug instructions:
renumber steps, remove note about -DDEBUG

Quoted 3 lines
---
 doc/README.arm-relocation |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)

Thanks!

bye,
Heiko

Signature · 2 lines
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
#6 lore raw

PATCH v3 2/2 README.arm-relocation: get relocated address in gdb

In reply to Ben Gardiner

Dear Ben Gardiner,

Quoted 19 lines · In message <7ed11e02b0db005231f5c6baa299761f3aa04f6f.1304024417.git.bengardiner…

When your emulator is connected at reset (or is used to load u-boot) it is possible to get the relocation address from the gd->relocaddr since gd is always in r8 (on ARM) it is addressable before the gdb has remapped symbols.

Document this alternate method in-line with the original method written by Heiko Schocher.

CC Heiko Schocher <[email protected]>
CC Wolfgang Denk <[email protected]>

---
Changes since V2:
* add gd->relocaddr as a secondary method of obtaining the symbol-file gdb argument
Changes since V1:
* update to reflect proposed changes to existing debug instructions:
renumber steps, remove note about -DDEBUG

Quoted 3 lines
---
 doc/README.arm-relocation |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)

Applied, thanks.

Best regards,

Wolfgang Denk

Signature · 5 lines
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Military secrets are the most fleeting of all.
	-- Spock, "The Enterprise Incident", stardate 5027.4