From d25b43b1635df370424a57d4475ba4ca46f43758 Mon Sep 17 00:00:00 2001 From: Evan Hunter Date: Fri, 21 Nov 2014 17:42:23 +0000 Subject: [PATCH] jtag: Avoid extra SRSTn resets when connecting Previously the jtag_add_reset(1, 0) caused the processor to be released, and if SRSTn existed then it would then be reset again two lines later. Change-Id: I58b7a12607f46f83caa7ed3b3cebc4195eb51ef6 Signed-off-by: Evan Hunter Reviewed-on: http://openocd.zylin.com/2398 Tested-by: jenkins Reviewed-by: Spencer Oliver --- src/jtag/core.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/jtag/core.c b/src/jtag/core.c index 04b0fc669..eb01abc71 100644 --- a/src/jtag/core.c +++ b/src/jtag/core.c @@ -1552,11 +1552,12 @@ int jtag_init_reset(struct command_context *cmd_ctx) * REVISIT once Tcl code can read the reset_config modes, this won't * need to be a C routine at all... */ - jtag_add_reset(1, 0); /* TAP_RESET, using TMS+TCK or TRST */ if (jtag_reset_config & RESET_HAS_SRST) { jtag_add_reset(1, 1); if ((jtag_reset_config & RESET_SRST_PULLS_TRST) == 0) jtag_add_reset(0, 1); + } else { + jtag_add_reset(1, 0); /* TAP_RESET, using TMS+TCK or TRST */ } /* some targets enable us to connect with srst asserted */