Hello everyone,
I've been using openocd from the svn for a while now. Really great
project!!!
But I do have some trouble with release v0.2 that might be interesting
for you guys.
1. This issue has been around for some time in the svn. Some people
have reported it but it hasn't really been fixed. When making
openocd there is an error in finally linking openocd.
With release v0.2 I do the following on my Ubuntu 9.04 machine:
./configure --enable-ft2232_ftd2xx
--with-ftd2xx-linux-tardir=/home/jaentscm/Downloads/libftd2xx0.4.16
make
At the end linking fails with:
./.libs/libopenocd.a(ft2232.o): In function `ft2232_quit':
/home/jaentscm/source/openocd-0.2.0/src/jtag/ft2232.c:2773:
undefined reference to `FT_Close'
./.libs/libopenocd.a(ft2232.o): In function `ft2232_write':
/home/jaentscm/source/openocd-0.2.0/src/jtag/ft2232.c:347:
undefined reference to `FT_Write'
./.libs/libopenocd.a(ft2232.o): In function `ft2232_init_ftd2xx':
/home/jaentscm/source/openocd-0.2.0/src/jtag/ft2232.c:1809:
undefined reference to `FT_SetVIDPID'
/home/jaentscm/source/openocd-0.2.0/src/jtag/ft2232.c:1839:
undefined reference to `FT_OpenEx'
/home/jaentscm/source/openocd-0.2.0/src/jtag/ft2232.c:1903:
undefined reference to `FT_SetLatencyTimer'
/home/jaentscm/source/openocd-0.2.0/src/jtag/ft2232.c:1909:
undefined reference to `FT_GetLatencyTimer'
/home/jaentscm/source/openocd-0.2.0/src/jtag/ft2232.c:1919:
undefined reference to `FT_SetTimeouts'
/home/jaentscm/source/openocd-0.2.0/src/jtag/ft2232.c:1925:
undefined reference to `FT_SetBitMode'
/home/jaentscm/source/openocd-0.2.0/src/jtag/ft2232.c:1931:
undefined reference to `FT_GetDeviceInfo'
/home/jaentscm/source/openocd-0.2.0/src/jtag/ft2232.c:1871:
undefined reference to `FT_ListDevices'
/home/jaentscm/source/openocd-0.2.0/src/jtag/ft2232.c:1882:
undefined reference to `FT_ListDevices'
/home/jaentscm/source/openocd-0.2.0/src/jtag/ft2232.c:1809:
undefined reference to `FT_SetVIDPID'
/home/jaentscm/source/openocd-0.2.0/src/jtag/ft2232.c:1847:
undefined reference to `FT_OpenEx'
./.libs/libopenocd.a(ft2232.o): In function `ft2232_purge_ftd2xx':
/home/jaentscm/source/openocd-0.2.0/src/jtag/ft2232.c:1960:
undefined reference to `FT_Purge'
./.libs/libopenocd.a(ft2232.o): In function `ft2232_read':
/home/jaentscm/source/openocd-0.2.0/src/jtag/ft2232.c:385:
undefined reference to `FT_Read'
collect2: ld returned 1 exit status
This has been reported before and can be fixed by manually linking
and changing the order of the object files.
2. The second issue and the one that is a lot worse for is. That
since r1915 in the svn I cannot use openocd with my stm32-stick
anymore.
I use a config file with the following commands:
telnet_port 4000
gdb_port 2000
source [find interface/stm32-stick.cfg]
source [find board/hitex_stm32-performancestick.cfg]
This works fine in revision r1915 but stops working afterwards
with me continuously getting "Warn : Invalid ACK in SWJDP transaction"
My first guess was that the problem with the jtag_khz which
changed from 500 to 1000 but changing that manually did not help
at all.
I attached a debug output with -d3 for reference.
Currently I am still using r1915 but I hope to move to a working release
soon, as using an old svn revision does not seem very obvious and
everytime we are installing openocd on a new computer the big hassle starts.
regards
Michael
Open On-Chip Debugger 0.2.0 (2009-08-03-10:20) 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
User : 5 0 command.c:396 command_print(): debug_level: 3
Debug: 6 0 configuration.c:83 find_file(): found openocd.cfg
Debug: 8 0 command.c:68 script_debug(): command - telnet_port
Debug: 9 0 command.c:77 script_debug(): telnet_port - argv[0]=ocd_telnet_port
Debug: 10 0 command.c:77 script_debug(): telnet_port - argv[1]=4000
Debug: 12 0 command.c:68 script_debug(): command - gdb_port
Debug: 13 0 command.c:77 script_debug(): gdb_port - argv[0]=ocd_gdb_port
Debug: 14 0 command.c:77 script_debug(): gdb_port - argv[1]=2000
Debug: 15 0 configuration.c:83 find_file(): found
/usr/local/share/openocd/scripts/interface/stm32-stick.cfg
Debug: 17 0 command.c:68 script_debug(): command - interface
Debug: 18 0 command.c:77 script_debug(): interface - argv[0]=ocd_interface
Debug: 19 0 command.c:77 script_debug(): interface - argv[1]=ft2232
Debug: 21 0 command.c:68 script_debug(): command - ft2232_device_desc
Debug: 22 0 command.c:77 script_debug(): ft2232_device_desc -
argv[0]=ocd_ft2232_device_desc
Debug: 23 0 command.c:77 script_debug(): ft2232_device_desc -
argv[1]=STM32-PerformanceStick A
Debug: 25 0 command.c:68 script_debug(): command - ft2232_layout
Debug: 26 0 command.c:77 script_debug(): ft2232_layout -
argv[0]=ocd_ft2232_layout
Debug: 27 0 command.c:77 script_debug(): ft2232_layout - argv[1]=stm32stick
Debug: 29 0 command.c:68 script_debug(): command - ft2232_vid_pid
Debug: 30 0 command.c:77 script_debug(): ft2232_vid_pid -
argv[0]=ocd_ft2232_vid_pid
Debug: 31 0 command.c:77 script_debug(): ft2232_vid_pid - argv[1]=0x0640
Debug: 32 0 command.c:77 script_debug(): ft2232_vid_pid - argv[2]=0x002d
Debug: 33 0 configuration.c:83 find_file(): found
/usr/local/share/openocd/scripts/board/hitex_stm32-performancestick.cfg
Debug: 34 1 configuration.c:83 find_file(): found
/usr/local/share/openocd/scripts/target/stm32.cfg
Debug: 36 1 command.c:68 script_debug(): command - jtag_khz
Debug: 37 1 command.c:77 script_debug(): jtag_khz - argv[0]=ocd_jtag_khz
Debug: 38 1 command.c:77 script_debug(): jtag_khz - argv[1]=1000
Debug: 39 1 core.c:1268 jtag_config_khz(): handle jtag khz
User : 40 1 command.c:396 command_print(): 1000 kHz
Debug: 42 1 command.c:68 script_debug(): command - jtag_nsrst_delay
Debug: 43 1 command.c:77 script_debug(): jtag_nsrst_delay -
argv[0]=ocd_jtag_nsrst_delay
Debug: 44 1 command.c:77 script_debug(): jtag_nsrst_delay - argv[1]=100
User : 45 1 command.c:396 command_print(): jtag_nsrst_delay: 100
Debug: 47 1 command.c:68 script_debug(): command - jtag_ntrst_delay
Debug: 48 1 command.c:77 script_debug(): jtag_ntrst_delay -
argv[0]=ocd_jtag_ntrst_delay
Debug: 49 1 command.c:77 script_debug(): jtag_ntrst_delay - argv[1]=100
User : 50 1 command.c:396 command_print(): jtag_ntrst_delay: 100
Debug: 52 1 command.c:68 script_debug(): command - reset_config
Debug: 53 1 command.c:77 script_debug(): reset_config - argv[0]=ocd_reset_config
Debug: 54 1 command.c:77 script_debug(): reset_config - argv[1]=trst_and_srst
Debug: 55 1 tcl.c:237 jim_newtap_cmd(): Creating New Tap, Chip: stm32_hitex,
Tap: cpu, Dotted: stm32_hitex.cpu, 8 params
Debug: 56 1 tcl.c:253 jim_newtap_cmd(): Processing option: -irlen
Debug: 57 1 tcl.c:253 jim_newtap_cmd(): Processing option: -ircapture
Debug: 58 1 tcl.c:253 jim_newtap_cmd(): Processing option: -irmask
Debug: 59 1 tcl.c:253 jim_newtap_cmd(): Processing option: -expected-id
Debug: 60 1 core.c:1116 jtag_tap_init(): Created Tap: stm32_hitex.cpu @ abs
position 0, irlen 4, capture: 0x1 mask: 0xf
Debug: 61 1 tcl.c:237 jim_newtap_cmd(): Creating New Tap, Chip: stm32_hitex,
Tap: bs, Dotted: stm32_hitex.bs, 16 params
Debug: 62 1 tcl.c:253 jim_newtap_cmd(): Processing option: -irlen
Debug: 63 1 tcl.c:253 jim_newtap_cmd(): Processing option: -ircapture
Debug: 64 1 tcl.c:253 jim_newtap_cmd(): Processing option: -irmask
Debug: 65 1 tcl.c:253 jim_newtap_cmd(): Processing option: -expected-id
Debug: 66 1 tcl.c:253 jim_newtap_cmd(): Processing option: -expected-id
Debug: 67 1 tcl.c:253 jim_newtap_cmd(): Processing option: -expected-id
Debug: 68 1 tcl.c:253 jim_newtap_cmd(): Processing option: -expected-id
Debug: 69 1 tcl.c:253 jim_newtap_cmd(): Processing option: -expected-id
Debug: 70 1 core.c:1116 jtag_tap_init(): Created Tap: stm32_hitex.bs @ abs
position 0, irlen 5, capture: 0x1 mask: 0x1
Debug: 71 1 target.c:4295 jim_target(): Target command params:
Debug: 72 1 target.c:4296 jim_target(): target create stm32_hitex.cpu cortex_m3
-endian little -chain-position stm32_hitex.cpu
Debug: 74 1 command.c:68 script_debug(): command - bank
Debug: 75 1 command.c:77 script_debug(): bank - argv[0]=ocd_flash_bank
Debug: 76 1 command.c:77 script_debug(): bank - argv[1]=stm32x
Debug: 77 1 command.c:77 script_debug(): bank - argv[2]=0
Debug: 78 1 command.c:77 script_debug(): bank - argv[3]=0
Debug: 79 1 command.c:77 script_debug(): bank - argv[4]=0
Debug: 80 1 command.c:77 script_debug(): bank - argv[5]=0
Debug: 81 1 command.c:77 script_debug(): bank - argv[6]=0
Debug: 82 1 tcl.c:237 jim_newtap_cmd(): Creating New Tap, Chip: stm32_hitex,
Tap: unknown, Dotted: stm32_hitex.unknown, 6 params
Debug: 83 1 tcl.c:253 jim_newtap_cmd(): Processing option: -irlen
Debug: 84 1 tcl.c:253 jim_newtap_cmd(): Processing option: -ircapture
Debug: 85 1 tcl.c:253 jim_newtap_cmd(): Processing option: -irmask
Debug: 86 1 core.c:1116 jtag_tap_init(): Created Tap: stm32_hitex.unknown @ abs
position 0, irlen 4, capture: 0x1 mask: 0xf
Debug: 88 1 command.c:68 script_debug(): command - init
Debug: 89 1 command.c:77 script_debug(): init - argv[0]=ocd_init
Debug: 90 2 openocd.c:129 handle_init_command(): target init complete
Debug: 91 2 ft2232.c:2059 ft2232_init(): ft2232 interface using shortest path
jtag state transitions
Debug: 92 2 ft2232.c:1805 ft2232_init_ftd2xx(): 'ft2232' interface using FTD2XX
with 'stm32stick' layout (0640:002d)
Debug: 93 568 ft2232.c:1916 ft2232_init_ftd2xx(): current latency timer: 2
Info : 94 569 ft2232.c:1938 ft2232_init_ftd2xx(): device: 4
Info : 95 569 ft2232.c:1939 ft2232_init_ftd2xx(): deviceID: 104857645
Info : 96 569 ft2232.c:1940 ft2232_init_ftd2xx(): SerialNumber: HXE01275 A
Info : 97 569 ft2232.c:1941 ft2232_init_ftd2xx(): Description:
STM32-PerformanceStick A
Debug: 98 569 ft2232.c:2587 stm32stick_init(): 80 88 8b
Debug: 99 570 ft2232.c:2607 stm32stick_init(): 82 01 03
Debug: 100 571 ft2232.c:477 ft2232_speed(): 86 05 00
Debug: 101 580 openocd.c:136 handle_init_command(): jtag interface init complete
Debug: 102 580 core.c:1161 jtag_init_inner(): Init JTAG chain
Debug: 103 580 core.c:291 jtag_call_event_callbacks(): jtag event: JTAG
controller reset (RESET or TRST)
Debug: 104 580 core.c:807 jtag_reset_callback(): -
Debug: 105 580 core.c:807 jtag_reset_callback(): -
Debug: 106 580 core.c:807 jtag_reset_callback(): -
Error: 107 584 core.c:865 jtag_examine_chain_check(): JTAG communication
failure: check connection, JTAG interface, target power etc.
Error: 108 584 core.c:1176 jtag_init_inner(): trying to validate configured
JTAG chain anyway...
Error: 109 586 core.c:1071 jtag_validate_chain(): Could not validate JTAG scan
chain, IR mismatch, scan returned 0x7FFF. tap=stm32_hitex.cpu pos=0 expected
0x1 got 3
Warn : 110 586 core.c:1181 jtag_init_inner(): Could not validate JTAG chain,
continuing anyway...
Debug: 111 586 openocd.c:142 handle_init_command(): jtag init complete
Debug: 112 586 arm_adi_v5.c:960 ahbap_debugport_init():
Warn : 113 591 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 114 593 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Debug: 115 593 arm_adi_v5.c:1005 ahbap_debugport_init(): AHB-AP ID Register
0xffffffff, Debug ROM Address 0xffffffff
Warn : 116 595 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 117 597 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 118 597 arm_adi_v5.c:759 mem_ap_read_buf_u32(): Block read error address
0xe000ed00, count 0x1
Debug: 119 597 target.c:1348 target_read_u32(): address: 0xe000ed00 failed
Debug: 120 597 openocd.c:151 handle_init_command(): flash init complete
Debug: 121 597 openocd.c:155 handle_init_command(): mflash init complete
Debug: 122 597 openocd.c:159 handle_init_command(): NAND init complete
Debug: 123 597 openocd.c:163 handle_init_command(): pld init complete
Debug: 124 597 gdb_server.c:2236 gdb_init(): gdb service for target cortex_m3
at port 2000
Warn : 125 610 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 126 714 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 127 818 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 128 920 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 129 1023 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 130 1127 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 131 1231 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 132 1332 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 133 1435 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 134 1539 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 135 1641 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 136 1744 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 137 1848 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 138 1950 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 139 2053 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 140 2156 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 141 2260 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 142 2364 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 143 2467 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 144 2568 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 145 2670 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 146 2773 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 147 2877 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 148 2980 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 149 3084 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 150 3188 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 151 3290 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 152 3394 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 153 3495 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 154 3598 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 155 3702 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 156 3805 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 157 3909 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 158 4013 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 159 4114 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 160 4217 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 161 4321 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 162 4424 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 163 4528 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 164 4632 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 165 4735 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 166 4838 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 167 4942 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 168 5045 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 169 5147 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 170 5250 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 171 5353 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 172 5457 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 173 5558 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 174 5660 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 175 5762 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 176 5865 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 177 5968 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 178 6072 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 179 6176 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 180 6279 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 181 6381 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 182 6484 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 183 6587 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 184 6692 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
Warn : 185 6796 arm_adi_v5.c:226 swjdp_transaction_endcheck(): Invalid ACK in
SWJDP transaction
_______________________________________________
Openocd-development mailing list
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development