On February 27, 2018 2:42:25 AM PST, Matthias Welwarsky 
<matthias.welwar...@sysgo.com> wrote:
>I'm guessing that the BUSY check was done to explicitly to avoid a JTAG
>WAIT, 
>which was an error condition not long ago. It might still break with
>SWD.

Ah, I didn’t know that WAIT was ever considered an error. From reading the ARM 
debug infrastructure spec, it looked more like a flow control mechanism. I see 
now that OpenOCD appears to enable ORUNDETECT (at least I think it does, based 
on dap_dp_init in arm_adi_v5.c).

According to the ADI specification, SWD also has a WAIT response, which it 
issues in case a previous transaction is outstanding. It says just the same as 
JTAG: if WAIT is received, normally a debugger just resends the same 
transaction. Although using sticky overrun mode changes the format a bit so 
that WAIT is followed by a data packet, which it would not be with ORUNDETECT 
cleared, and you have to clear the sticky status bit.

-- 
Christopher Head

Attachment: signature.asc
Description: PGP signature

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
OpenOCD-devel mailing list
OpenOCD-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openocd-devel

Reply via email to