I dont have an IAR ST Butterfly (where can you get them ?) or any J-Link hardware.
There is a problem communicating with the processor, obviously, but the values returned from the debug port ( Read AHBAP_CSW 0x23000042 ) are what they should be and it seems that communications with the debug unit is working. It seems that the problems start when we try to acces the actual processor registers over the AHB bus. So my question remains, is the target running, halted or in reset ? I do not trust the line where OpenOCD says target halted. When there is a communications problem that almost return reasonable values ( that is, not total JTAG failure ) then OpenOCD can become confused about the target state. The reset/poll/debug entry handling is a mixture of science and black magic, it works surprisingly often, but I cannot say I understand when why it sometimes works and sometimes fails. J-Link experts ???? Regards Magnus Uwe Hermann wrote: > On Fri, Apr 03, 2009 at 05:42:48PM +0200, Magnus Lundin wrote: > >> There is also a problem with error checking in the >> swjdp_transaction_endcheck that creates a recusive loop with this type >> of problem. >> >> Try the following patch. >> > > Hm, slightly different behavior, but still not working I think. > > Open On-Chip Debugger 1.0 (2009-04-03-20:11) svn:1454M > > BUGS? Read http://svn.berlios.de/svnroot/repos/openocd/trunk/BUGS > > $URL: http://svn.berlios.de/svnroot/repos/openocd/trunk/src/openocd.c $ > 1 kHz > Info : J-Link ARM-OB STM32 compiled Jan 13 2009 17:07:17 > Info : Vref = 3.300 TCK = 1 TDI = 0 TDO = 1 TMS = 1 SRST = 1 TRST = 1 > > Info : J-Link JTAG Interface ready > 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: 0x06412041 (Manufacturer: 0x020, > Part: 0x6412, Version: 0x0) > Info : JTAG Tap/device matched > Error: AHBAP Cached values: dp_select 0x0, ap_csw 0xa2000012, ap_tar > 0xffffffff > Error: SWJ-DP OVERRUN - check clock or reduce jtag speed > Error: Read AHBAP_CSW 0x23000052 > Error: AHBAP Cached values: dp_select 0x0, ap_csw 0xa2000012, ap_tar > 0xffffffff > Error: SWJ-DP OVERRUN - check clock or reduce jtag speed > Error: Read AHBAP_CSW 0x23000052 > Warn : Block read error address 0xe000ed00, count 0x1 > 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 > Error: AHBAP Cached values: dp_select 0x10, ap_csw 0xa2000002, ap_tar > 0xe000edf0 > Error: SWJ-DP OVERRUN - check clock or reduce jtag speed > Error: Read AHBAP_CSW 0x23000042 > Error: AHBAP Cached values: dp_select 0x10, ap_csw 0xa2000002, ap_tar > 0xe000edf0 > Error: SWJ-DP OVERRUN - check clock or reduce jtag speed > Error: Read AHBAP_CSW 0x23000042 > Error: AHBAP Cached values: dp_select 0x10, ap_csw 0xa2000002, ap_tar > 0xe000edf0 > Error: SWJ-DP OVERRUN - check clock or reduce jtag speed > Error: Read AHBAP_CSW 0x23000042 > Error: AHBAP Cached values: dp_select 0x0, ap_csw 0xa2000012, ap_tar > 0xffffffff > Error: SWJ-DP OVERRUN - check clock or reduce jtag speed > Error: Read AHBAP_CSW 0x23000042 > Warn : Block write error address 0xe0002000, wcount 0x1 > Error: AHBAP Cached values: dp_select 0x10, ap_csw 0xa2000002, ap_tar > 0xe000edf0 > Error: SWJ-DP OVERRUN - check clock or reduce jtag speed > Error: Read AHBAP_CSW 0x23000042 > Error: AHBAP Cached values: dp_select 0x10, ap_csw 0xa2000002, ap_tar > 0xe000edf0 > Error: SWJ-DP OVERRUN - check clock or reduce jtag speed > Error: Read AHBAP_CSW 0x23000042 > target state: halted > target halted due to undefined, current mode: Handler SysTick > xPSR: 0x0100000f pc: 0x08001ce0 > > > This time there's no endless loop, the debug output stops here and I can > connect via > telnet, but can't do much there... > > >> init >> flash probe 0 >> > device id = 0x10006412 > STM32 flash size failed, probe inaccurate - assuming 32k flash > flash size = 32kbytes > flash 'stm32x' found at 0x08000000 > >> flash info 0 >> > #0: stm32x at 0x08000000, size 0x00008000, buswidth 0, chipwidth 0 > # 0: 0x00000000 (0x400 1kB) protected > # 1: 0x00000400 (0x400 1kB) protected > # 2: 0x00000800 (0x400 1kB) protected > # 3: 0x00000c00 (0x400 1kB) protected > # 4: 0x00001000 (0x400 1kB) protected > # 5: 0x00001400 (0x400 1kB) protected > # 6: 0x00001800 (0x400 1kB) protected > # 7: 0x00001c00 (0x400 1kB) protected > # 8: 0x00002000 (0x400 1kB) protected > # 9: 0x00002400 (0x400 1kB) protected > # 10: 0x00002800 (0x400 1kB) protected > # 11: 0x00002c00 (0x400 1kB) protected > # 12: 0x00003000 (0x400 1kB) protected > # 13: 0x00003400 (0x400 1kB) protected > # 14: 0x00003800 (0x400 1kB) protected > # 15: 0x00003c00 (0x400 1kB) protected > # 16: 0x00004000 (0x400 1kB) protected > # 17: 0x00004400 (0x400 1kB) protected > # 18: 0x00004800 (0x400 1kB) protected > # 19: 0x00004c00 (0x400 1kB) protected > # 20: 0x00005000 (0x400 1kB) protected > # 21: 0x00005400 (0x400 1kB) protected > # 22: 0x00005800 (0x400 1kB) protected > # 23: 0x00005c00 (0x400 1kB) protected > # 24: 0x00006000 (0x400 1kB) protected > # 25: 0x00006400 (0x400 1kB) protected > # 26: 0x00006800 (0x400 1kB) protected > # 27: 0x00006c00 (0x400 1kB) protected > # 28: 0x00007000 (0x400 1kB) protected > # 29: 0x00007400 (0x400 1kB) protected > # 30: 0x00007800 (0x400 1kB) protected > # 31: 0x00007c00 (0x400 1kB) protected > stm32x (Low Density) - Rev: A > >> dump_image foo.dump 0 0x00008000 >> > usb_bulk_read failed (requested=937, result=256) > jlink_tap_execute, wrong result -1, expected 937 > usb_bulk_write failed (requested=3250, result=-110) > jlink_tap_execute, wrong result -1, expected 1623 > usb_bulk_write failed (requested=3264, result=-110) > jlink_tap_execute, wrong result -1, expected 1630 > usb_bulk_write failed (requested=3278, result=-110) > jlink_tap_execute, wrong result -1, expected 1637 > > [SEGFAULT] > > > Uwe. > _______________________________________________ Openocd-development mailing list [email protected] https://lists.berlios.de/mailman/listinfo/openocd-development
