diff options
author | Paul Fertser <fercerpav@gmail.com> | 2015-03-09 18:55:03 +0300 |
---|---|---|
committer | Paul Fertser <fercerpav@gmail.com> | 2015-04-14 11:41:54 +0100 |
commit | ea85ed98beb909d9295a7b15ceb99e067082e31f (patch) | |
tree | 09ed2f2cb0a8482cf34b288fe44f8f6f42297037 | |
parent | 7407046e3d194963a26db5d046cdce117f752b44 (diff) | |
download | riscv-openocd-ea85ed98beb909d9295a7b15ceb99e067082e31f.zip riscv-openocd-ea85ed98beb909d9295a7b15ceb99e067082e31f.tar.gz riscv-openocd-ea85ed98beb909d9295a7b15ceb99e067082e31f.tar.bz2 |
jtag/core: honour SRST timings in SWD mode
Since SWD is currently abusing the JTAG command queue for reset and
sleep handling (and all other operations are performed in a different
way), sleep needs to be forced explicitly to ensure correct timings.
Change-Id: I5b0da6cbb7d0560154e4077b261aa6828cefc892
Signed-off-by: Paul Fertser <fercerpav@gmail.com>
Reviewed-on: http://openocd.zylin.com/2591
Tested-by: jenkins
Reviewed-by: Tomas Vanek <vanekt@fbl.cz>
Reviewed-by: Spencer Oliver <spen@spen-soft.co.uk>
-rw-r--r-- | src/jtag/core.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/jtag/core.c b/src/jtag/core.c index 1b1106f..74c2731 100644 --- a/src/jtag/core.c +++ b/src/jtag/core.c @@ -649,6 +649,12 @@ void swd_add_reset(int req_srst) if (adapter_nsrst_delay) jtag_add_sleep(adapter_nsrst_delay * 1000); } + + retval = jtag_execute_queue(); + if (retval != ERROR_OK) { + LOG_ERROR("SRST timings error"); + return; + } } } |