ECToo / the-bus-pirate

Automatically exported from code.google.com/p/the-bus-pirate
Other
0 stars 1 forks source link

JTAG Probe Chain Macro Only Finds First Device #36

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?

1. Connect the Bus Pirate to a board with more than one device on the JTAG
chain. I used a Digilent Spartan-3 Starter board which has an XC3S200 FPGA
and XCF02S Flash PROM on the JTAG chain.

2. Run the JTAG Probe Chain macro.

What is the expected output? What do you see instead?

Only the first device on the chain, the XC3S200, is detected.

What version of the product are you using? On what operating system?

Bus Pirate v2go. Firmware v2.1-RC2.

Please provide any additional information below.

In the code for the probe macro, in jtag.c around line 202, there is a
while-loop which scans the chain. There is an if-test for a timeout/limit
of 250 devices. The test has the wrong comparison operator. It has a "<"
instead of ">" so it breaks out of the while-loop on the first iteration.

Original issue reported on code.google.com by matt.sam...@gmail.com on 25 Aug 2009 at 3:44

GoogleCodeExporter commented 9 years ago
I corrected the error on 202. Could you please check the latest nightly in SVN 
(rev
221+) to see if it fixes your problem?

Original comment by ianles...@gmail.com on 25 Aug 2009 at 4:15

GoogleCodeExporter commented 9 years ago
I loaded rev 221 and it fixed the problem:

0x02 DEVICE(S)
#0x02 : 0xC9 0x0A 0x20 0xA0
#0x02 : 0xC9 0x02 0x82 0x80

On each line, it prints the total number of devices instead of each device's 
number.
In the loop that prints the devices, I think the "bpWrite(i);" should be a
"bpWrite(c);" (or maybe c+1).

Original comment by matt.sam...@gmail.com on 25 Aug 2009 at 11:39

GoogleCodeExporter commented 9 years ago
Thank you for the excellent and detailed bug reports. I updated the display to 
start
at 1. I also made a few minor changes to the user interface text. Update is in 
the
SVN nightlies for v2go.

The JTAG library is a bit neglected at the moment. I had to borrow a JTAG board 
to
develop it. It is the only bitbang library not integrated with the new central
bitbang functions. Its text is not included in the translation files. I'll give 
it a
through update if I ever have access to JTAG hardware.

Original comment by ianles...@gmail.com on 26 Aug 2009 at 10:09

GoogleCodeExporter commented 9 years ago

Original comment by ianles...@gmail.com on 7 Sep 2009 at 6:08