summaryrefslogtreecommitdiff
path: root/src/jtag/jtag.h
diff options
context:
space:
mode:
authoroharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60>2008-04-09 05:50:34 +0000
committeroharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60>2008-04-09 05:50:34 +0000
commita0647227439434c4a71470e336ec8715d43d0501 (patch)
treec32efbf7f71bf620ea2c1c72ed9e7f30b036727e /src/jtag/jtag.h
parent94320a1dc3394e90560fd4f0cddc3362a4337275 (diff)
downloadopenocd_libswd-a0647227439434c4a71470e336ec8715d43d0501.tar.gz
openocd_libswd-a0647227439434c4a71470e336ec8715d43d0501.tar.bz2
openocd_libswd-a0647227439434c4a71470e336ec8715d43d0501.tar.xz
openocd_libswd-a0647227439434c4a71470e336ec8715d43d0501.zip
- added "init" command. "init" and "reset" at end of startup script is equivalent
to daemon_startup(still supported). - print warning if srst and trst change state at the same time when srst_and_trst is seperate - reset now performs a trst, examines and validates the jtag chain before targets assert reset - if startup fails to examine and validate the jtag chain, try a reset before trying again git-svn-id: svn://svn.berlios.de/openocd/trunk@552 b42882b7-edfa-0310-969c-e2dbd0fdcd60
Diffstat (limited to 'src/jtag/jtag.h')
-rw-r--r--src/jtag/jtag.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/jtag/jtag.h b/src/jtag/jtag.h
index 19329447..b7ce094d 100644
--- a/src/jtag/jtag.h
+++ b/src/jtag/jtag.h
@@ -241,8 +241,12 @@ enum reset_types
extern enum reset_types jtag_reset_config;
-/* JTAG subsystem */
+/* initialize JTAG chain using only a TLR reset. If init fails,
+ * try reset + init.
+ */
extern int jtag_init(struct command_context_s *cmd_ctx);
+/* reset, then initialize JTAG chain */
+extern int jtag_init_reset(struct command_context_s *cmd_ctx);
extern int jtag_register_commands(struct command_context_s *cmd_ctx);
/* JTAG interface, can be implemented with a software or hardware fifo
@@ -325,6 +329,10 @@ extern int interface_jtag_add_runtest(int num_cycles, enum tap_state endstate);
* This is why combinations such as "reset_config srst_only srst_pulls_trst"
* are supported.
*
+ * only req_tlr_or_trst and srst can have a transition for a
+ * call as the effects of transitioning both at the "same time"
+ * are undefined, but when srst_pulls_trst or vice versa,
+ * then trst & srst *must* be asserted together.
*/
extern void jtag_add_reset(int req_tlr_or_trst, int srst);
/* this drives the actual srst and trst pins. srst will always be 0