No subject


Tue Aug 19 22:18:26 CEST 2008


BDI>info
    Target CPU        : MPC8280/8220/5200 (Zeppo)
    Target state      : debug mode
    Debug entry cause : trace
    Current PC        : 0x03f85428
    Current CR        : 0x24000004
    Current MSR       : 0x00003002
    Current LR        : 0x03f85428
BDI>

We are now running <in_ram>. Its address before relocation is 0x23428.
After relocation, it is 0x03f85428. Delta is 0x3F62000, and that matches
the address I was expecting to find (0x3F82000 is the new destination address
provided to the function <relocate_code>)

Then I reload the symbol table within gdb:

(gdb) symbol-file
(gdb) add-symbol-file u-boot 0x3F82000
add symbol table from file "u-boot" at
        .text_addr = 0x3f82000
(gdb) p in_ram
$1 = {<text variable, no debug info>} 0x3f85428 <in_ram>
(gdb) bt
#0  <signal handler called>
Cannot access memory at address 0x206d6ff5
(gdb) break board_init_r
Breakpoint 3 at 0x3f86680: file board.c, line 566.
(gdb) c

Breakpoint 3, <signal handler called>
(gdb) bt
#0  <signal handler called>
Cannot access memory at address 0x313135b2

I stop on the function, but can't see the source, as I would expect...
(please note that I use HW breakpoints

Any idea what I am doing wrong or missing ?
TIA and Best Regards, Olivier






More information about the U-Boot mailing list