On Wed, Jan 12, 2011 at 1:38 PM, simon qian <simonqian.open...@gmail.com> wrote:
> For SWD transaction layer, only 3 operation is needed.
> 1. initializaion/finalization/config(set trn)
> 2. output sequency on SWD, which is used to make adi into SWD mode.
> 3. The other is the transaction itself, including read and write operation.
>
> Any other applicapable feature?

Output sequence in fact can be realized as series of writes with no
parity bit - there is a helper function in libswd for this, 7 or 8
bytes is sufficient :-)

I think initialization should be separate from TRN. Initialization is
usually performed once while TRN very often.

TRN requires some additional stuff to be done on the interface logic
and it is device-specific, so it should have its own separate
function. In UrJTAG there was only option to toggle JTAG signal pins
and no others, so i had to create virtual signal, function wrapper and
high-active and low-active bitmask specific to an interface. Some
additional code recognized the virtual signal and then activated all
high-active bitmask outputs on signal-high and low-active bitmask
outputs on signal low. This however can (and will?) cause troubles on
interfaces other than ft2232 where output buffers configuration cannot
be easily set with a port bitmask switch (ie. some command or
sequence), therefore if it is possible we should create sepratate
function for making TRN switches - one function is sufficient, maybe a
null pointer to a function in necessary.

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