
I read the debug chapter of DULG. The confusing thing is that gdb cannot stop even at an in-flash funciton, e.g., cpu_init_f(), which is supposed to be straight forward. Does it mean that I screw up the memory mapping? u-boot is linked at 0xffe00000.
Mine is an MPC8245 board in which an original bootloader locates at 0xfff00000.
I'm trying to trace into flash_init(). The function is called after u-boot is relocated to RAM. So the System.map is no longer useful. How can
I
know the address of the function to set a breakpoint?
The following screenshot shows that u-boot locates at 0x07fd9000. I
tried
to get the address by adding the offset got from System.map to 0x07fd9000. But it seems not right because GDB didn't stop at that address.
Top of RAM usable for U-Boot at: 08000000 Reserving 152k for U-Boot at: 07fd9000 Reserving 192k for malloc() at: 07fa9000 Reserving 56 Bytes for Board Info at: 07fa8fc8 Reserving 48 Bytes for Global Data at: 07fa8f98 Stack Pointer at: 07fa8f78 New Stack Pointer is: 07fa8f78 Now running in RAM - U-Boot at: 07fd9000 FLASH: Flash bank # 0: Manuf. ID @ 0xFF800000: 0xFFFFFFFF Device ID @ 0xFF800008: 0xFFFFFFFF *** failed ***
__________________________________ Do you Yahoo!? Yahoo! Mail is new and improved - Check it out! http://promotions.yahoo.com/new_mail