Situation:
Board with STM32 (ARM Cortex-M3) and JTAG based on FT2232 (JTAGkey 
clone). OpenOCD 0.2.0 using ftd2xx.dll

When I connect the JTAG to the PC (power-up) and run OpenOCD I get:

> Open On-Chip Debugger 0.2.0 (2009-07-19-11:13) Release
> $URL: 
> http://svn.berlios.de/svnroot/repos/openocd/tags/openocd-0.2.0/src/openocd.c $
> For bug reports, read http://svn.berlios.de/svnroot/repos/openocd/trunk/BUGS
> 1000 kHz
> jtag_nsrst_delay: 100
> jtag_ntrst_delay: 100
> 1000 kHz
> Info : device: 4
> Info : deviceID: 67358712
> Info : SerialNumber: FTS7ZEMMA
> Info : Description: Amontec JTAGkey A
> Warn : Tap/Device does not have IDCODE
> Error: JTAG tap: stm32.cpu              got: 0x00000000 (mfg: 0x000, part: 
> 0x0000, ver: 0x0)
> Error: JTAG tap: stm32.cpu  expected 1 of 1: 0x3ba00477 (mfg: 0x23b, part: 
> 0xba00, ver: 0x3)
> Error: trying to validate configured JTAG chain anyway...
> Error: Could not validate JTAG scan chain, IR mismatch, scan returned 0x0000. 
> tap=stm32.cpu pos=0 expected 0x1 got 0
> Warn : Could not validate JTAG chain, continuing anyway...
> Warn : Invalid ACK in SWJDP transaction
> Warn : Invalid ACK in SWJDP transaction
> Warn : Invalid ACK in SWJDP transaction
> Warn : Invalid ACK in SWJDP transaction
> Warn : Block read error address 0xe000ed00, count 0x1
> Warn : Invalid ACK in SWJDP transaction
> Warn : Invalid ACK in SWJDP transaction
> Warn : Invalid ACK in SWJDP transaction

And that last warning goes on forever. Now when I just close that 
OpenOCD session and start it up again:

> Open On-Chip Debugger 0.2.0 (2009-07-19-11:13) Release
> $URL: 
> http://svn.berlios.de/svnroot/repos/openocd/tags/openocd-0.2.0/src/openocd.c $
> For bug reports, read http://svn.berlios.de/svnroot/repos/openocd/trunk/BUGS
> 1000 kHz
> jtag_nsrst_delay: 100
> jtag_ntrst_delay: 100
> 1000 kHz
> Info : device: 4
> Info : deviceID: 67358712
> Info : SerialNumber: FTS7ZEMMA
> Info : Description: Amontec JTAGkey A
> Info : JTAG tap: stm32.cpu tap/device found: 0x3ba00477 (mfg: 0x23b, part: 
> 0xba00, ver: 0x3)
> Info : JTAG Tap/device matched
> Info : JTAG tap: stm32.bs tap/device found: 0x16410041 (mfg: 0x020, part: 
> 0x6410, ver: 0x1)
> Info : JTAG Tap/device matched

-> Works perfectly.

If I'd close OpenOCD, disconnect the JTAG (power-down), plug that again 
(power-up) and start OpenOCD - the situation would be exactly the same.

In exactly the same situation (OpenOCD started after power-up of JTAG) - 
  version 0.1.0 works fine:

> Open On-Chip Debugger 0.1.0 (2009-01-21-21:15) Release
> BUGS? Read http://svn.berlios.de/svnroot/repos/openocd/trunk/BUGS
> $URL: 
> https://[email protected]/svnroot/repos/openocd/tags/openocd-0.1.0/src/openocd.c
>  $
> 1000 kHz
> 1000 kHz
> Info : JTAG tap: stm32.cpu tap/device found: 0x3ba00477 (Manufacturer: 0x23b, 
> Part: 0xba00, Version: 0x3)
> Info : JTAG Tap/device matched
> Info : JTAG tap: stm32.bs tap/device found: 0x16410041 (Manufacturer: 0x020, 
> Part: 0x6410, Version: 0x1)
> Info : JTAG Tap/device matched
> Warn : no telnet port specified, using default port 4444
> Warn : no gdb port specified, using default port 3333
> Warn : no tcl port specified, using default port 6666

The same situation with LPC2103 looks a bit different, but the bug is 
here too. After JTAG power-up:

> Open On-Chip Debugger 0.2.0 (2009-07-19-11:13) Release
> $URL: 
> http://svn.berlios.de/svnroot/repos/openocd/tags/openocd-0.2.0/src/openocd.c $
> For bug reports, read http://svn.berlios.de/svnroot/repos/openocd/trunk/BUGS
> jtag_nsrst_delay: 100
> jtag_ntrst_delay: 100
> 1000 kHz
> Info : device: 4
> Info : deviceID: 67358712
> Info : SerialNumber: FTS7ZEMMA
> Info : Description: Amontec JTAGkey A
> Warn : Tap/Device does not have IDCODE
> Error: JTAG tap: lpc2103.cpu              got: 0x00000000 (mfg: 0x000, part: 
> 0x0000, ver: 0x0)
> Error: JTAG tap: lpc2103.cpu  expected 1 of 1: 0x4f1f0f0f (mfg: 0x787, part: 
> 0xf1f0, ver: 0x4)
> Error: trying to validate configured JTAG chain anyway...
> Error: Could not validate JTAG scan chain, IR mismatch, scan returned 0x00. 
> tap=lpc2103.cpu pos=0 expected 0x1 got 0
> Warn : Could not validate JTAG chain, continuing anyway...
> Error: unknown EmbeddedICE version (comms ctrl: 0x0000e38c)

And the next run:

> Open On-Chip Debugger 0.2.0 (2009-07-19-11:13) Release
> $URL: 
> http://svn.berlios.de/svnroot/repos/openocd/tags/openocd-0.2.0/src/openocd.c $
> For bug reports, read http://svn.berlios.de/svnroot/repos/openocd/trunk/BUGS
> jtag_nsrst_delay: 100
> jtag_ntrst_delay: 100
> 1000 kHz
> Info : device: 4
> Info : deviceID: 67358712
> Info : SerialNumber: FTS7ZEMMA
> Info : Description: Amontec JTAGkey A
> Info : JTAG tap: lpc2103.cpu tap/device found: 0x4f1f0f0f (mfg: 0x787, part: 
> 0xf1f0, ver: 0x4)
> Info : JTAG Tap/device matched

0.1.0 after power-up:

> Open On-Chip Debugger 0.1.0 (2009-01-21-21:15) Release
> BUGS? Read http://svn.berlios.de/svnroot/repos/openocd/trunk/BUGS
> $URL: 
> https://[email protected]/svnroot/repos/openocd/tags/openocd-0.1.0/src/openocd.c
>  $
> 1000 kHz
> 1000 kHz
> Info : JTAG tap: lpc2103.cpu tap/device found: 0x4f1f0f0f (Manufacturer: 
> 0x787, Part: 0xf1f0, Version: 0x4)
> Info : JTAG Tap/device matched
> Warn : no telnet port specified, using default port 4444
> Warn : no gdb port specified, using default port 3333
> Warn : no tcl port specified, using default port 6666

I've checked with some other STM32 boards I have and the situation is 
exactl the same. I've checked some previous revisions of OpenOCD that I 
have, and the last one before 0.2.0 that I have - r2498 - works fine. My 
JTAG is a pretty good copy of JTAGkey, I've two of them, and both show 
exactly the same behaviour.


0.2.0 using libftdi+libusb doesn't show that bug.

4\/3!!
_______________________________________________
Openocd-development mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to