Good news - libswd-openocd driver bridge is now ready and functional [1] it reads out the IDCODE. I have already pushed the patches to the repository [2]. Right now have to multitask to another task but at weekend I will try to make arm_adi_v5 work with my swd target using crafted drivers and swd function set :-)
Best regards! :-) Tomek [1] http://stm32primer2swd.sf.net/ [2] http://repo.or.cz/w/openocd/libswd.git This is the program invocation and debug messages output: %./openocd -c noinit Open On-Chip Debugger 0.5.0-dev-g7ad8d2e-dirty (2011-07-25-15:13) Licensed under GNU GPL v2 For bug reports, read http://openocd.berlios.de/doc/doxygen/bugs.html Info : accepting 'telnet' connection from 4444 Info : only one transport option; autoselect 'swd' Info : New SWD context initialized at 0x2843B280 10 kHz Info : KT-LINK SWD-Mode initialization complete... Info : max TCK change to: 30000 kHz Info : clock speed 10 kHz SWD_I: Executing swd_dap_activate(0x2843b280, SWD_OPERATION_EXECUTE) SWD_I: Executing swd_dap_reset(0x2843b280, SWD_OPERATION_EXECUTE) SWD_I: Executing swd_dp_read_idcode(0x2843b280, SWD_OPERATION_EXECUTE) SWD_I: swd_dp_read_idcode() succeeds, IDCODE=EE2805D8 (11101110001010000000010111011000) Info : SWD transport initialization complete. Found IDCODE=0xEE2805D8. Warn : gdb services need one or more targets defined User : 42 75811 command.c:557 command_print(): debug_level: 3 Debug: 43 78630 command.c:151 script_debug(): command - ocd_command ocd_command type ocd_transport init Debug: 44 78630 command.c:151 script_debug(): command - ocd_transport ocd_transport init Debug: 46 78630 transport.c:263 handle_transport_init(): handle_transport_init Debug: 47 78630 swd.c:129 oocd_swd_transport_init(): entering function... SWD_I: Executing swd_dap_activate(0x2843b280, SWD_OPERATION_EXECUTE) Debug: 48 78630 swd_libswd_drv_openocd.c:174 swd_drv_mosi_trn(): OpenOCD's swd_drv_mosi_trn(swdctx=@0x2843B280, bits=1) Debug: 49 78630 interface.c:41 oocd_interface_signal_find(): Searching for signal "RnW" Debug: 50 78630 interface.c:62 oocd_interface_signal_find(): Signal RnW already exists. Debug: 53 78631 swd_libswd_drv_openocd.c:61 swd_drv_mosi_8(): OpenOCD's swd_drv_mosi_8(swdctx=@0x2843B280, cmd=@0x28432CA0, data=0xFFFFFFFF, bits=8, nLSBfirst=0x01) Debug: 70 78646 swd_libswd_drv_openocd.c:61 swd_drv_mosi_8(): OpenOCD's swd_drv_mosi_8(swdctx=@0x2843B280, cmd=@0x28432CC0, data=0xFFFFFFFF, bits=8, nLSBfirst=0x01) Debug: 87 78662 swd_libswd_drv_openocd.c:61 swd_drv_mosi_8(): OpenOCD's swd_drv_mosi_8(swdctx=@0x2843B280, cmd=@0x28432CE0, data=0xFFFFFFFF, bits=8, nLSBfirst=0x01) Debug: 104 78778 swd_libswd_drv_openocd.c:61 swd_drv_mosi_8(): OpenOCD's swd_drv_mosi_8(swdctx=@0x2843B280, cmd=@0x28432D00, data=0xFFFFFFFF, bits=8, nLSBfirst=0x01) Debug: 121 78792 swd_libswd_drv_openocd.c:61 swd_drv_mosi_8(): OpenOCD's swd_drv_mosi_8(swdctx=@0x2843B280, cmd=@0x28432D20, data=0xFFFFFFFF, bits=8, nLSBfirst=0x01) Debug: 138 78808 swd_libswd_drv_openocd.c:61 swd_drv_mosi_8(): OpenOCD's swd_drv_mosi_8(swdctx=@0x2843B280, cmd=@0x28432D40, data=0xFFFFFFFF, bits=8, nLSBfirst=0x01) Debug: 155 78824 swd_libswd_drv_openocd.c:61 swd_drv_mosi_8(): OpenOCD's swd_drv_mosi_8(swdctx=@0x2843B280, cmd=@0x28432D60, data=0xFFFFFFFF, bits=8, nLSBfirst=0x01) Debug: 172 78840 swd_libswd_drv_openocd.c:61 swd_drv_mosi_8(): OpenOCD's swd_drv_mosi_8(swdctx=@0x2843B280, cmd=@0x28432D80, data=0xFFFFFFFF, bits=8, nLSBfirst=0x01) Debug: 189 78856 swd_libswd_drv_openocd.c:61 swd_drv_mosi_8(): OpenOCD's swd_drv_mosi_8(swdctx=@0x2843B280, cmd=@0x28432DA0, data=0x00000079, bits=8, nLSBfirst=0x01) Debug: 206 78872 swd_libswd_drv_openocd.c:61 swd_drv_mosi_8(): OpenOCD's swd_drv_mosi_8(swdctx=@0x2843B280, cmd=@0x28432DC0, data=0xFFFFFFE7, bits=8, nLSBfirst=0x01) SWD_I: Executing swd_dap_reset(0x2843b280, SWD_OPERATION_EXECUTE) Debug: 223 78888 swd_libswd_drv_openocd.c:61 swd_drv_mosi_8(): OpenOCD's swd_drv_mosi_8(swdctx=@0x2843B280, cmd=@0x28432DE0, data=0xFFFFFFFF, bits=8, nLSBfirst=0x01) Debug: 240 78904 swd_libswd_drv_openocd.c:61 swd_drv_mosi_8(): OpenOCD's swd_drv_mosi_8(swdctx=@0x2843B280, cmd=@0x28432E00, data=0xFFFFFFFF, bits=8, nLSBfirst=0x01) Debug: 257 78920 swd_libswd_drv_openocd.c:61 swd_drv_mosi_8(): OpenOCD's swd_drv_mosi_8(swdctx=@0x2843B280, cmd=@0x28432E20, data=0xFFFFFFFF, bits=8, nLSBfirst=0x01) Debug: 274 78936 swd_libswd_drv_openocd.c:61 swd_drv_mosi_8(): OpenOCD's swd_drv_mosi_8(swdctx=@0x2843B280, cmd=@0x28432E40, data=0xFFFFFFFF, bits=8, nLSBfirst=0x01) Debug: 291 78952 swd_libswd_drv_openocd.c:61 swd_drv_mosi_8(): OpenOCD's swd_drv_mosi_8(swdctx=@0x2843B280, cmd=@0x28432E60, data=0xFFFFFFFF, bits=8, nLSBfirst=0x01) Debug: 308 78968 swd_libswd_drv_openocd.c:61 swd_drv_mosi_8(): OpenOCD's swd_drv_mosi_8(swdctx=@0x2843B280, cmd=@0x28432E80, data=0xFFFFFFFF, bits=8, nLSBfirst=0x01) Debug: 325 78984 swd_libswd_drv_openocd.c:61 swd_drv_mosi_8(): OpenOCD's swd_drv_mosi_8(swdctx=@0x2843B280, cmd=@0x28432EA0, data=0xFFFFFFFF, bits=8, nLSBfirst=0x01) Debug: 342 79000 swd_libswd_drv_openocd.c:61 swd_drv_mosi_8(): OpenOCD's swd_drv_mosi_8(swdctx=@0x2843B280, cmd=@0x28432EC0, data=0xFFFFFFFF, bits=8, nLSBfirst=0x01) Debug: 359 79016 swd_libswd_drv_openocd.c:61 swd_drv_mosi_8(): OpenOCD's swd_drv_mosi_8(swdctx=@0x2843B280, cmd=@0x28432EE0, data=0x00000000, bits=8, nLSBfirst=0x01) SWD_I: Executing swd_dp_read_idcode(0x2843b280, SWD_OPERATION_EXECUTE) Debug: 376 79032 swd_libswd_drv_openocd.c:61 swd_drv_mosi_8(): OpenOCD's swd_drv_mosi_8(swdctx=@0x2843B280, cmd=@0x28432F00, data=0xFFFFFFA5, bits=8, nLSBfirst=0x01) Debug: 393 79048 swd_libswd_drv_openocd.c:201 swd_drv_miso_trn(): OpenOCD's swd_drv_miso_trn(swdctx=@0x2843B280, bits=1) Debug: 404 79060 swd_libswd_drv_openocd.c:131 swd_drv_miso_8(): OpenOCD's swd_drv_miso_8(swdctx=@0x2843B280, cmd=@0x28432F40, data=@0x28432F40, bits=3, nLSBfirst=0x00) reads: 0x00000004 Debug: 469 79124 swd_libswd_drv_openocd.c:159 swd_drv_miso_32(): OpenOCD's swd_drv_miso_32(swdctx=@0x2843B280, cmd=@0x28432F60, data=@0x0828432F60, bits=32, nLSBfirst=0x00) reads: 0xEE2805D8 Debug: 470 79124 swd_libswd_drv_openocd.c:160 swd_drv_miso_32(): OpenOCD's swd_drv_miso_32() reads: 0xEE2805D8 Debug: 473 79126 swd_libswd_drv_openocd.c:131 swd_drv_miso_8(): OpenOCD's swd_drv_miso_8(swdctx=@0x2843B280, cmd=@0x28432F80, data=@0x28432F80, bits=1, nLSBfirst=0x00) reads: 0x00000000 SWD_I: swd_dp_read_idcode() succeeds, IDCODE=EE2805D8 (11101110001010000000010111011000) Info : 474 79126 swd.c:147 oocd_swd_transport_init(): SWD transport initialization complete. Found IDCODE=0xEE2805D8. Below is the user action that makes the above output: %telnet localhost 4444 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. Open On-Chip Debugger > source [find interface/kt-link-swd.cfg] only one transport option; autoselect 'swd' New SWD context initialized at 0x2843B280 > adapter_khz 10 10 kHz > init KT-LINK SWD-Mode initialization complete... max TCK change to: 30000 kHz clock speed 10 kHz SWD transport initialization complete. Found IDCODE=0xEE2805D8. gdb services need one or more targets defined > transport init SWD transport initialization complete. Found IDCODE=0xEE2805D8. -- CeDeROM, SQ7MHZ, http://www.tomek.cedro.info _______________________________________________ Openocd-development mailing list Openocd-development@lists.berlios.de https://lists.berlios.de/mailman/listinfo/openocd-development