This is the mail archive of the ecos-discuss@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Debugging thread application with gdb and MacRaigor ICE JTAG


On Thu, 2006-04-06 at 12:59 +0200, Andrew Lunn wrote:
> On Thu, Apr 06, 2006 at 12:15:36PM +0200, Jaws wrote:
> > Hi all,
> >    I am using to debug a multi-thread application a Macraigor JTAG ICE 
> > mpDemon by
> > on my platform based on AT91M55800A.
> > I'm using the gdb version 6.1 provided by Macraigor and I enabled the 
> > option
> > "Include GDB multi-threading debug support" in eCos Hal and in eCos Kernel.
> 
> This will not work with JTAG. Enabling this adds a couple of functions
> to the gdb stub to allow access to thread info. But when using JTAG
> the gdb stub is not used, it directly reads/writes to memory and CPU
> registers.
> 
> 
> > Trying to enable the 'Support GDB thread operations via ICE/Multi-ICE' the 
> > appplication doesn't start and this output  appear on the serial console:
> > $O5B6379675F6E65745F696E69745D20496E69743A206D62696E6974283078303030303030303029
> > 0A#60
> 
> gdb con the serial port can probably decode this message. It is
> probably the output of your program bug mangled in gdb format.

Once you enable this, you *must* run the program via GDB.  In this 
case, it's trying to print a message which is easy enough to decode
using the attached program.  The message is:
  [cyg_net_init] Init: mbinit(0x00000000)
which would be one of the first things that a program would print.

As Andrew said, getting thread information when debugging via JTAG/ICE
is not that easy.  The JTAG device does not have access to eCos' 
internal structures (required to see what's going on with the threads).
In order to get this to work, some additional code has to be included
in your eCos image (that's what the CDL option you tried does), but
the JTAG unit has to also know how to use this information.  This has
only ever been done with the ARM Multi-ICE in the past, so you'll be
on your own to make it work with a Macraigor unit (and *good luck*
trying to get any support from them!)

-- 
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------

Attachment: decode_gdb.py
Description: application/python

-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]