Hardware debuggers for PPC74xx G4 CPUs

Jon Smirl jonsmirl at gmail.com
Thu Nov 15 13:34:45 EST 2007

On 11/14/07, Jerry Van Baren <gvb.linuxppc.dev at gmail.com> wrote:
> Jon Smirl wrote:
> > On 11/13/07, Benjamin Herrenschmidt <benh at kernel.crashing.org> wrote:
> >>> That's why Dominic wants to get OpenOCD running on the PowerPC. All we
> >>> need is the programming documentation for controlling the CPU via the
> >>> debug hardware.
> >> Note that this is basically different for every CPU around.
> >
> > I'd like to get it for the MPC5200 because of the project I am working
> > on, an open source audio device. It would be nice if there was a cheap
> > hardware debugger available for hackers to use on it. Maybe one of the
> > Freescale developers will see this and send me the right docs.
> >
> > Is it radically different? Dominic has been able to support every ARM
> > 7/9 chip he can get his hands on without too much trouble once the
> > core support was written. I don't think he has ARM 11 working yet.
> >
> >>> Obviously this documentation exist, all of the commercial vendors had
> >>> to have it to develop their debuggers. Maybe it is already out there
> >>> and we just don't know where to look.
> >> Ben.
> DISCLAIMER: Extrapolating grossly from almost no knowledge!
> My understanding is that the Freescale PPC debugger interface is based
> on the JTAG interface using a proprietary command set.  Basically, if
> you do their magic BDM (JTAG extension) command, you get into an
> internal scan chain that allows you to read/write the processor
> internals (registers).
> The problems are many...
> * The documentation is only available under NDA, a problem for open
> source debuggers.

This is what we need. I would like it specifically for the mpc5200.
But we want to use it in OpenOCD so NDA won't work.

> * The scan chain is different on every processor, and may be different
> on different revisions of the same processor.

Hopefully the doc will cover this.

> * If you mess up with JTAG, you will probably burn up the CPU.  Very
> literally.  I've seen it done.  Twice.  (Thankfully not my screwup, and
> it wasn't a PPC so it deserved to die. ;-)  The internal scan chain is
> probably safer, but YMMV.

Dominic is way experienced implementing JTAG for ARM CPUs. He has done
several dozen interfaces. ARM doesn't have any problems releasing
their debugging info.

I've also lined up a mpc5200 development board vendor who wants a
cheap mpc5200 JTAG too and is willing to supply him with target

JTAG hardware would be something similar to this:
So $30-40 for hardware with free OpenOCD software and you have JTAG
for the mpc5200.
This puts it in the range of classroom use.

The few embedded classes I've been around lately are being taught on
ARM hardware because it is so cheap. Development boards and the JTAG
can be had for under $100.

For example check out this store, it carries hundreds of ARM products
and almost no PowerPC ones.

Jon Smirl
jonsmirl at gmail.com

More information about the Linuxppc-dev mailing list