]> git.sur5r.net Git - openocd/commitdiff
jtag: core: report TRST and SRST as asserted only when they really are
authorPaul Fertser <fercerpav@gmail.com>
Sat, 7 Jan 2017 18:51:32 +0000 (21:51 +0300)
committerPaul Fertser <fercerpav@gmail.com>
Sun, 15 Jan 2017 11:02:14 +0000 (11:02 +0000)
When SRST is never enabled, the global jtag_srst variable is left at its
initial state, that is, -1, and it does _not_ mean SRST is currently
asserted. Same about TRST.

Fixes "reset halt" in cases when srst_pulls_trst but srst usage is not
enabled.

Change-Id: I8d2e9120479de4cfbf5561033926c9ef945eecc9
Signed-off-by: Paul Fertser <fercerpav@gmail.com>
Reviewed-on: http://openocd.zylin.com/3943
Tested-by: jenkins
Reviewed-by: Andreas Fritiofson <andreas.fritiofson@gmail.com>
Reviewed-by: Tomas Vanek <vanekt@fbl.cz>
src/jtag/core.c

index 77269e4f4eb685c9e53f2a3e5cafb9a1e2fe9acc..8c79eb2302c3b643f3750a400270c0a3bbaea6ad 100644 (file)
@@ -1717,11 +1717,11 @@ void jtag_set_reset_config(enum reset_types type)
 
 int jtag_get_trst(void)
 {
-       return jtag_trst;
+       return jtag_trst == 1;
 }
 int jtag_get_srst(void)
 {
-       return jtag_srst;
+       return jtag_srst == 1;
 }
 
 void jtag_set_nsrst_delay(unsigned delay)