Hi all,
I am trying to load one TAP with instruction, and then shift in some
data to that TAP. OpenOCD manual says :

— Command: irscan [tap instruction]+ [-endstate tap_state]
For each tap listed, loads the instruction register with its
associated numeric instruction. (The number of bits in that
instruction may be displayed using the scan_chain command.) For other
TAPs, a BYPASS instruction is loaded.

and

— Command: drscan tap [numbits value]+ [-endstate tap_state]
Loads the data register of tap with a series of bit fields that
specify the entire register. Each field is numbits bits long with a
numeric value (hexadecimal encouraged). The return value holds the
original value of each of those fields.


So, I was basically using irscan with TAP name and command (hex
value), and then drscan - with tap name, num bits I want to shift to
TAP and the vaule (in hex). However, this constanly hits the assert :

if (!active->bypass)
   assert(active == tap);

in driver.c. I discovered that irscan actually did not put all other
TAPs to BYPASS mode leaving tap to which my target CPU is attached in
the non-bypass mode, and thus preventing me to write to some other
TAP.

What would be the best way to avoid this ?

BR,
Drasko

------------------------------------------------------------------------------
Virtualization & Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/
_______________________________________________
OpenOCD-devel mailing list
OpenOCD-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openocd-devel

Reply via email to