Picking up, briefly, an old thread about how OpenOCD could
learn to support "smart" dongles... where code running inside
the JTAG adapter can offload some tasks from OpenOCD, like
polling for status changes.


On Monday 23 November 2009, David Brownell wrote:
> On Monday 23 November 2009, Dean Glazeski wrote:
> > What about us poor graduate students who make less than unemployed people?
> > I can't afford big name JTAG dongles! :)  I would be very interested in
> > trying to work on a project like this in the time I have available.
> 
> That's part of why I suggested someone whip together a standard
> (reference?) platform, and sketched what it might look like.
> 
> Something breadboardable, or which can be put together by simple
> hacks to a widely available board, would be a place to start.

It's come to my attention that at least current versions of NXP's
"LPCXpresso" [1] ($US 30) might include a candidate for this.

Briefly, there are two versions of this.  Each card has two halves,
which can be split apart (by first scoring the PCB then splitting
along that score):

 - Breakout board for LPC1114 (Cortex-M0) or LPC1343 (Cortex-M3);
   the two versions differ in which breakout is used.

 - "Smart" JTAG adapter, "LPC-Link".  Supports JTAG, SWD + SWO.

That LPC-Link thing has an LPC3154 driving JTAG or SWD via SPI,
with a high speed USB link upstream.  And there seems to be a
JTAG link connected to the LPC3154 chip itself, sufficient for
debugging JTAG code (you'd provide its hardware hookup yourself).

That LPC3154 has an ARM926 with 192 KBytes SRAM ... but no flash,
so if you're not going to load it via JTAG, it expects to get its
code downloaded over USB (using DFU).  (The chip can boot from
SPI flash, but the board doesn't populate that footprint.)

So anyone wanting to work on this kind of project for OpenOCD
could presumably get an LPC-Link and develop a new firmware
image for it ... one that's not coupled to the CodeRed tools
included with that board.  Enumerate over USB, and accept
commands to perform whatever JTAG or SWD operations need to
be handled, using SPI and a few GPIOs.

One question is whether they've tried to lock down that board
to "blessed" firwmare images -- crypto-sealed by someone.
If they have, this kind of project wouldn't work.  I think the
hardware is designed to support that stuff, so another issue
would be whether they'd switch to that in the future.

Regardless, if *current* versions aren't locked down, then
they might make decent platforms for this kind of work.

- Dave

[1] http://ics.nxp.com/lpcxpresso/ ... one suspects that these
    are subsidized a bit by NXP, at least to the extent of
    accepting a profit margin measured in "more developers"
    rather than per-board incremental revenue.
_______________________________________________
Openocd-development mailing list
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to