From a0647227439434c4a71470e336ec8715d43d0501 Mon Sep 17 00:00:00 2001 From: oharboe Date: Wed, 9 Apr 2008 05:50:34 +0000 Subject: - 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 --- src/jtag/jtag.h | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'src/jtag/jtag.h') 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 -- cgit v1.2.3