Hi everyone!
I am trying to use openOCD Server with the JTAGkey-2 dongle and a STM32W board.
I used the two cfg Files interface/jtagkey2.cfg and target/stm32.cfg. Because there is no reference manual
avaiable for the stm32w i do not know the right TAP ID’s.
When I let openOCD auto probe the TAP ID’s it shows me the IDCODE for the CPU which is equal to the one in the stm32.cfg. Another TAP ID is shown and I assume that this one is the boundary scan TAP.
When I change the the boudary scan ID in the stm32.cfg and try to start debugging with the command
openocd.exe -f /interface/jtagkey2.cfg -f /target/stm32.cfg I get the following error.
Info : JTAG tap: stm32.cpu tap/device found: 0x3ba00477 (mfg: 0x23b, part: 0xba00, ver: 0x3)
Info : JTAG tap: stm32.bs tap/device found: 0x169a862b (mfg: 0x315, part: 0x69a8, ver: 0x1)
Error: stm32.bs: IR capture error; saw 0x1e not 0x01
When I play arround with the -irlen of both TAP’s I found a configuration that won’t give me an error.
For the CPU TAP I took a length of 5 and for the other TAP a length of 1.
With that config I got the following output when I start the openOCD server.
C:\>openocd_ftdi -f /interface/jtagkey2.cfg -f /target/stm32.cfg
Open On-Chip Debugger 0.4.0 (2010-08-19-23:33)
Licensed under GNU GPL v2
For bug reports, read
http://openocd.berlios.de/doc/doxygen/bugs.html
100 kHz
jtag_nsrst_delay: 100
jtag_ntrst_delay: 100
Info : device: 6 "2232H"
Info : deviceID: 67358712
Info : SerialNumber: 53SN4LCSA
Info : Description: Amontec JTAGkey-2 A
Info : max TCK change to: 30000 kHz
Info : clock speed 100 kHz
Info : JTAG tap: stm32.cpu tap/device found: 0x3ba00477 (mfg: 0x23b, part: 0xba00, ver: 0x3)
Info : JTAG tap: stm32.bs tap/device found: 0x169a862b (mfg: 0x315, part: 0x69a8, ver: 0x1)
Info : stm32.cpu: hardware has 0 breakpoints, 0 watchpoints
This config is strange because the stm32w has a cortex m3 core and in the documentation of them it is written that the IR length of the CPU TAP is 4 and not 5, but this is the only configuration that didn’t give me errors.
Strange is also that I get no hardware brakpoints and watchpoints.
When I now connect to the running openocd server over telnet and call a “reset init” command, i got a time out error.
Also when I call “mdb 0 1024” for example I only got 00 00 00 lines, it seems that the memory is abolutly empty.
When I try to write something into memory over “mwb” and then read this byte I still get 00 00 00 output.
It seems that the openOCD server and the JTAGkey-2 got a pseudo connection
I hope that anyone out there already played around with openOCD and a stm32w board or someone have an idea whats going wrong here.
Thank you for your answers!