On Sat, Dec 25, 2010 at 3:17 AM, David Brownell <davi...@pacbell.net> wrote:
> Also, as promised some time back I'll soon
> commit my second SWD "framework" patch.  The
> build issues with mainline OpenOCD have now been
> resolved; framework patch got updated; and it passes
> sanity testing.  BUT ... SWD won't yet be fully
> functional in OpenOCD.
>
> The commit will mean:  add some SWD driver
> support and debug a bit, and working SWD
> should be near...  FT2232 on the way...

I am getting back to document and put the libswd on its site at
http://libswd.sf.net - the goal is to make it work with low level and
high level drivers. As you can see the draft and its organization, we
can expand its possibilities. I have seen your  code for transport
layer - it is very nice and elegant approach. As I am still making
libswd work on UrJTAG I had also created something similar to
transport (pretty independently, before reading the openocd code haha)
and make it work with already existing cable drivers - this in general
is done by flushing the swd_cmd_queue into the driver-specific data
queue and flushing it into cable GPIO.

Please share your ideas on how libswd could be expanded to easily
implement high level commands as they are used with JLink or RLink, as
I don't have experience with them. I have RLink but did not analyze
its commands yet, I have some USB  dumps however waiting :-)

The swd_cmd_queue and driver bridge is implemented as four functions -
two can shift data into target (mosi) with char (<=8bit payload) and
int (<=32 bit payload) and two other in similar manner can shift out
(miso) data from target. These functions are separated in libswd_drv.c
(or libswd_drv_urjtag.c or maybe others, cable/program specific) so
their body can be target specific - it can shift out bits from char
arrays, but also can shift whole char/int payload. The other
parameters of these functions is bit count to shift and the direction
(LSB/MSB first). Maybe this organization is already enough to perform
high-level commands that are cable specific?

Best regards! :-)
Tomek


-- 
CeDeROM, SQ7MHZ, http://www.tomek.cedro.info
_______________________________________________
Openocd-development mailing list
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to