[U-Boot] Debugging u-boot with bdi3000 basics

I have read section 10 of the manual which describes debugging u-boot and have further questions.
1) In section 10.4, Tips and Tricks, it says "To prevent GDB from jumping around in the code when trying to single step, i. e. when it seems as if the code is not executing line by line, you can recompile your code with the following additional compiler options: "-fno-schedule-insns -fno-schedule-insns"
In the u-boot developer world, what is the best practice for adding these compiler options? I see CFLAGS in config.mk and assume that is what needs to be modified. However, I need a HOWTODOITRIGHT
2) I am using a bdi3000. Is there no way to build u-boot so that it is directly loaded to RAM by the debugger and does not relocate itself?
3) The function board_init_f() in board.c makes calls to debug(). I cannot determine how to enable debug() output. I saw one reference in the manual, but it gave no specifics.
Thanks, Mark

Hi Mark,
On 5/27/10, Mark Fanara mark.fanara@gmail.com wrote: ...
- I am using a bdi3000. Is there no way to build u-boot so that it is
directly loaded to RAM by the debugger and does not relocate itself?
#define CONFIG_SKIP_RELOCATE_UBOOT
BRs,
Alan

Dear Alan Carvalho de Assis,
In message AANLkTik4FYpDAK9bHVKZrNDMvUyCCg-xDaBqTkqyZovL@mail.gmail.com you wrote:
Hi Mark,
On 5/27/10, Mark Fanara mark.fanara@gmail.com wrote: ...
- I am using a bdi3000. Is there no way to build u-boot so that it is
directly loaded to RAM by the debugger and does not relocate itself?
#define CONFIG_SKIP_RELOCATE_UBOOT
Note that this doesn't exist on ll architectures. For example on PowerPC, we will always relocate.
Best regards,
Wolfgang Denk

Dear Wolfgang Denk,
Yes, it is true.
Currently only for ARMs and i386.
Best Regards,
Alan
On 5/27/10, Wolfgang Denk wd@denx.de wrote:
Dear Alan Carvalho de Assis,
In message AANLkTik4FYpDAK9bHVKZrNDMvUyCCg-xDaBqTkqyZovL@mail.gmail.com you wrote:
Hi Mark,
On 5/27/10, Mark Fanara mark.fanara@gmail.com wrote: ...
- I am using a bdi3000. Is there no way to build u-boot so that it is
directly loaded to RAM by the debugger and does not relocate itself?
#define CONFIG_SKIP_RELOCATE_UBOOT
Note that this doesn't exist on ll architectures. For example on PowerPC, we will always relocate.
Best regards,
Wolfgang Denk
-- 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@denx.de Die ganzen Zahlen hat der liebe Gott geschaffen, alles andere ist Menschenwerk... Leopold Kronecker

As my target board is PowerPC based (and therefore skipping relocation is not possible), I need help with my previously enumerated questions.
1) In section 10.4, Tips and Tricks, it says "To prevent GDB from jumping around in the code when trying to single step, i. e. when it seems as if the code is not executing line by line, you can recompile your code with the following additional compiler options: "-fno-schedule-insns -fno-schedule-insns"
In the u-boot developer world, what is the best practice for adding these compiler options? I see CFLAGS in config.mk and assume that is what needs to be modified. However, I need a HOWTODOITRIGHT
3) The function board_init_f() in board.c makes calls to debug(). I cannot determine how to enable debug() output. I saw one reference in the manual, but it gave no specifics.
On Thu, May 27, 2010 at 4:07 AM, Alan Carvalho de Assis acassis@gmail.com wrote:
Dear Wolfgang Denk,
Yes, it is true.
Currently only for ARMs and i386.
Best Regards,
Alan
On 5/27/10, Wolfgang Denk wd@denx.de wrote:
Dear Alan Carvalho de Assis,
In message AANLkTik4FYpDAK9bHVKZrNDMvUyCCg-xDaBqTkqyZovL@mail.gmail.com you wrote:
Hi Mark,
On 5/27/10, Mark Fanara mark.fanara@gmail.com wrote: ...
- I am using a bdi3000. Is there no way to build u-boot so that it is
directly loaded to RAM by the debugger and does not relocate itself?
#define CONFIG_SKIP_RELOCATE_UBOOT
Note that this doesn't exist on ll architectures. For example on PowerPC, we will always relocate.
Best regards,
Wolfgang Denk
-- 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@denx.de Die ganzen Zahlen hat der liebe Gott geschaffen, alles andere ist Menschenwerk... Leopold Kronecker

Dear Mark Fanara,
In message AANLkTinA8O1OtqI93hyazU2UDG4QbZzRkt3ql3iP9hCN@mail.gmail.com you wrote:
As my target board is PowerPC based (and therefore skipping relocation is not possible), I need help with my previously enumerated questions.
- In section 10.4, Tips and Tricks, it says "To prevent GDB from
jumping around in the code when trying to single step, i. e. when it seems as if the code is not executing line by line, you can recompile your code with the following additional compiler options: "-fno-schedule-insns -fno-schedule-insns"
In the u-boot developer world, what is the best practice for adding these compiler options? I see CFLAGS in config.mk and assume that is what needs to be modified. However, I need a HOWTODOITRIGHT
There is many ways to do this. You may or mayu not want to compile all files with this option, so you may add it to the glocal CFLAGS, or just locally in a subdirectory, or manually provide it on the command line, or ....
Ther eis no single "right" way.
- The function board_init_f() in board.c makes calls to debug(). I
cannot determine how to enable debug() output. I saw one reference in the manual, but it gave no specifics.
You just "#define DEBUG" before the first #include in that file.
Best regards,
Wolfgang Denk
participants (3)
-
Alan Carvalho de Assis
-
Mark Fanara
-
Wolfgang Denk