Hello Dominic,
first of all I would like to thank you for this excelent piece of code. It works perfectly and we are very satisfied with it. We use it for programming STR711 chips with use of Amontec USB Key. There is one thing, that would make us more happier and life easier. In our device, we have daisy chain, which consist of STR711 (device #0) and XPLA3 Coolrunner cpld (device #1). I set up configuration (listed below). It is probably correct, programming of STR711 flash works nicely. I would also like to program XPLA3 in the same way (Now,I have to use Webapck with Xilinx PP cable). In Webpack, I’ve created xsvf with the full daisy chain (STR711 and XPLA3). For the start, only operation I’ve recorded was erasing of cpld. In openocd I performed following command:
xsvf plain erase.xsvf
Openocd halts with this message:
Error: ft2232.c:451 ft2232_add_pathmove(): BUG: pd → tlr isn’t a valid TAP transition
I’ll be happy to help you investigate this bug/TODO, because working of this would really help us. If it help you, I can send you the xsvf file.
Thank you for your (or anybody’s) advice
Petr Masek
OpenOCD config:
telnet_port 4444
gdb_port 3333
interface ft2232
ft2232_device_desc “Amontec JTAGkey A”
ft2232_layout jtagkey
ft2232_vid_pid 0x0403 0xcff8
jtag_speed 0
reset_config trst_and_srst srst_pulls_trst
jtag_device 5 0x01 0x0f 0x05045093
jtag_device 4 0x01 0x0f 0x0e
daemon_startup reset
target arm7tdmi little run_and_halt 1 arm7tdmi
run_and_halt_time 0 150
working_area 0 0x2000C000 0x4000 nobackup
flash bank str7x 0x40000000 0x00040000 0 0 STR71x 0