Understanding ARM debugging tools

Hello everyone,

I’ve hit a programming snag and figure it’s a good time to set up a “real” debugging option (i.e. not blinking an LED/uart_printf) before imposing on others for troubleshooting. I’ve spent the evening trying to understand my options, and want to make sure I actually know what’s going on.

My hardware is an ARM9 (s3c2440) dev board and a parallel port Wiggler. I am using Eclipse + YAGARTO. I’ve been programming using the bootloader and DNW terminal. The board came packaged with H-JTAG. I want to be able to step through my code, monitor registers, and the like. I’d still like to use the bootloader if that’s of any consequence.

As I understand it (and please correct me because I have a feeling I’m way out there),

  1. Eclipse interfaces with GDB and provides me with a GUI for debugging that makes life easier.

  2. YAGARTO includes GDB, which does the debugging voodoo.

  3. I need to interface GDB to my hardware. This is where OpenOCD comes in.

  4. The H-JTAG server plays the same role as OpenOCD, but won’t work with Eclipse because it uses the RDI interface.

  5. OpenOCD just needs to be pointed toward the parallel port (interfaces/parport.cfg), and told to look for my chip (target/samsung_s3c2440.cfg), in Eclipse.

Is that the long and short of it? Other recommended options?

Greetings guy, I’m trying to use the same platform (mini2440). My studies are a little later of yours, but I found a tutorial that shows how to debugging the program.

http://www.yagarto.de/howto/yagarto2/index.html

good luck!