Ken Fuchs wrote:
> It would even be possible to use the JTAG
connector to flash the
> system BIOS. All Opteron mainboards must include "JTAG"
> circuits, but
Jeff Carr wrote:
You don't say!
Yes, AMD requires all Opteron (probably uniprocessor AMD64 too)
mainboards have the "JTAG" debugging circuits so AMD's Hardware Debug
Tool (HDT - requies a host with MS Windows 2000/XP & NDA) will run on
them. Any Opteron mainboard without "JTAG" circuits would have to be
developed without AMD's support, so such mainboards probably don't
exist.
> usually don't include the two JTAG headers.
Adding the headers is
> quite easy.
Hmmm. two headers? Interesting.
Yes, one per Opteron processor. Obviously only one would be needed to
flash the BIOS.
> An open source Opteron JTAG flash programmer
probably
> won't happen any time soon,
Sorry, I was just being pessimistic here. I'm not even sure the
Opteron JTAG chains support flashing the BIOS device, but I would be
surprised if it didn't.
Holy (**& that's fantastic. It sure might
happen soon! OK, I might be
getting ahead of myself. Are you sure the Opteron doesn't
require a ITP
or similar debugging port? Or in other words: Can you single step/halt
the processor/dump registers using the JTAG port. Lets hope so;
otherwise you might not be able to do much via the JTAG port.
AMD requires a special JTAG port be used for the Opteron (AMD64). The
AMD64 JTAG header is 2x13 with 0.05" spacing between pins.
The HDT software running on a MS Windows 2000/XP host can be used to
single step/halt the processor, dump registers and a whole lot more.
The American Arium ECM-50 can be attached using an Opteron Personality
Module via the JTAG (HDT) port. Provides nice source level debugging.
JTAG is a fantastic standard -- I'd expect it to
be adopted
for any new chip entering the market.
It has been used for several years, AFAIK.
> although it shouldn't be too difficult to do.
Anyone aware of
> an open source JTAG flash programmer of any kind?
Yes, there are at least two projects. I added a JTAG
programming
page to the FAQ:
http://linuxbios.org/index.php/JTAG/BSDL_Guide
Thank you!
Macraigor Systems produces and sells the Raven or OCDemon device that
is required to attach to the AMD Opteron JTAG. They also have GNU
software that allows one to use their OCD adapters (Raven & OCDemon):
http://www.macraigor.com/full_gnu.htm
So here are some questions then:
Do you know of any motherboards that leave the JTAG
connections populated?
I don't think any motherboards include JTAG headers, except possibly
Reference Design mainboards produced by chipset makers to demonstate
their chipsets to mainboard manufacturers. However, even my nVidia
CK8-04 CRB mainboard did not come with JTAG headers. However, the
toggle switch that enables JTAG access to one or both CPUs was
included. Those 2x13 .05" headers must be expensive.
Do you have instructions for populating them on some
motherboard I could pick up?
There are only two 2x13 .05" pads for the headers, so it should be
easy to see where they. If the headers are keyed (have a missing
pin), one may need to look at the mainboard schematic to get the right
orientation. You would need that in any case to get the ribbon cables
attached to the header with the proper orientation.
Do you have links to the Opteron JTAG docs (these docs
will tell you
what you can and can't do from the JTAG port)?
Clearly, the Opteron JTAG docs are available on the AMD NDA web site,
but I suspect that the more basic JTAG information is available
without need for an NDA from
We will need the BSDL files for the Opteron. Now if
only that was the
case for the Pentium M...
The closest I could find was BSDL files for K6:
http://www.amd.com/epd/designing/tsdocs/3.bsdfiles/
Maybe, if the right person nicely asks the right person at AMD, they
would provide the BSDL files for the Opteron. Couldn't hurt to try.
Sincerely,
Ken Fuchs <kfuchs(a)winternet.com>