Hello folks :-)

SWD for UtJTAG is now working :-) SWD itself is implemented as
standalone library [1] and resides inside src/tap/transport. I have
separated this transport layer because there might be also other
cables to work on TAP/DAP implemented in other way than JTAG and it
was the only sensible way to implement this kind of stuff. UrJTAG has
already impressive collection of interface drivers and other nice
features, so libswd can make use of them. The hardware I am working on
is SWJ-ready KT-LINK interface [2]. All works are done on STM32Primer2
Cortex-M3 development kit and described on [3].

There are still lots of things to do with libswd but the basic
functionality is now available and tested and its good starting point
for futher development by bigger community. libswd source code is
fully included into urjtag source tree (with documentation). Please
take a look at the UrJTAG source snapshot I was working on [4] (it is
based on the SVN 1864).

In few words:
-the changes were as noninvasive as possible - all old usage should
remain as it was plus new features
-to run swd connect user should perform "cable ..." and "detect" as
usual and get IDCODE in response or error
-chain was upgraded with swd_ctx_t *swdctx that holds the swd context
and all settings, queues, variables, etc
-libswd functions operate on *swdctx
-user can select transport type as "cable" command parameter
-transport is being set to cable->transport on cable_connect() because
it has access to the parameters, or is set default to JTAG for old
cables/drivers. cable_connect() it now wrapper that selects transport
and calls old cable_connect()
-cable_init() setts interface according to transport type
-detect() is now wrapper that calls detect function specific to transport set

I am currently still working on the cmd_swd() that will allow simple
text interface to the sw-dp/ap, but it should not be yet added,
because it is not verified (my cable got broken again). The good idea
would be to create separate automake/autoconf/libtool files for libswd
rather than including it into existing application files - the goal is
to keep it standalone and easily replaceable by newer versions simply
by replacing the src/tap/transport/libswd contents. This archive,
although messy, will be better source of information than dozens of
patches. Please familiarize yourself with the code and send
suggestions.  :-)

Best regards,
Tomek Cedro

[1] http://libswd.sf.net
[2] 
http://www.shop.kristech.eu/product_info.php?cPath=57&products_id=257&language=EN
[3] http://stm32primer2swd.sf.net/
[4] http://files.tomek.cedro.info/bkp/urjtag-20110315-0120.tar.bz2

-- 
CeDeROM, SQ7MHZ, http://www.tomek.cedro.info

------------------------------------------------------------------------------
Colocation vs. Managed Hosting
A question and answer guide to determining the best fit
for your organization - today and in the future.
http://p.sf.net/sfu/internap-sfd2d
_______________________________________________
UrJTAG-development mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/urjtag-development

Reply via email to