[U-Boot-Users] Sourcecode-debugging using BDI2000

"Häpe, Sebastian, HRD/AB" sebastian.haepe at eads.com
Mon Mar 7 13:39:43 CET 2005


Hi @all!

Maybe this is a little bit off-topic, anyway I hope someone will help me...

The problem is the following:

I have a custom board and successfully ported U-Boot to load and start my
Linux kernel.
Now I want to use sourcecode-debugging with the BDI2000.
In the BDI2000-configuration I added the parameters described in the manual.
The kernel was compiled with the '-g' option in the $CPPFLAGS-variable, so
debugging-symbols should be included.
So I proceed this way:

1. Starting the board with U-Boot
2. Setting a HW-breakpoint at 0x10000 (kernel load-address)
3. Uncompressing and starting the kernel, I get the message "Tranferring
control to Linux (at 0x00010000)..."
4. After the BDI has stopped, I set the next breakpoint at 0xC012e8cc
(function 'MMU_init()') and let him run till that point
5. I run the gdb with the uncompressed image "vmlinux" and connect to the
BDI.

GDB tells me:

(gdb) target remote bdi:2001
MMU_init() at arch/ppc/mm/init.c:240
240 	{
Current language:  auto; currently c
(gdb)

So far it's fine, now I try to single-step a few times:

(gdb) s
MMU_init() at arch/ppc/mm/init.c:241
241	if (ppc_md.progress)
(gdb) s
240	{
(gdb) s
241	if (ppc_md.progress)
(gdb) s
245	MMU_setup();
(gdb) s

At this point, the BDI says: - TARGET: started and GDB does not react
anymore.

What could be the reason for the strange stepping behaviour?
In U-Boot I had to add a few compiler parameters to prevent him from jumping
around in the code.
Is it the same here and what are the parameters I have to add?

Some help (even ideas ;-) ) would be great.

Greetings,
Sebastian Häpe





More information about the U-Boot mailing list