diff --git a/doc/openocd.texi b/doc/openocd.texi index 523be2b2e..91cc025bb 100644 --- a/doc/openocd.texi +++ b/doc/openocd.texi @@ -4474,14 +4474,6 @@ tasks which waste bandwidth by flushing small transfers too often, instead of batching them into larger operations. @end deffn -@deffn Command {endstate} tap_state -Flush any pending JTAG operations, -and return with all TAPs in @var{tap_state}. -This state should be a stable state such as @sc{reset}, -@sc{run/idle}, -@sc{drpause}, or @sc{irpause}. -@end deffn - @deffn Command {irscan} [tap instruction]+ [@option{-endstate} tap_state] For each @var{tap} listed, loads the instruction register with its associated numeric @var{instruction}. @@ -4552,7 +4544,7 @@ Default is enabled. @cindex TAP state names The @var{tap_state} names used by OpenOCD in the @command{drscan}, -@command{endstate}, and @command{irscan} commands are: +and @command{irscan} commands are: @itemize @bullet @item @b{RESET} @@ -4578,9 +4570,6 @@ face of TMS fixed and a free-running JTAG clock; for all the others, the next TCK transition changes to a new state. @itemize @bullet -@item @sc{reset} is probably most useful with @command{endstate}, -but entering it frequently has side effects. -(This is the only stable state with TMS high.) @item From @sc{drshift} and @sc{irshift}, clock transitions will produce side effects by changing register contents. The values to be latched in upcoming @sc{drupdate} or @sc{irupdate} states @@ -4838,6 +4827,9 @@ become much shorter. @item @b{arm7_9 fast_writes} @cindex arm7_9 fast_writes @*Use @command{arm7_9 fast_memory_access} instead. +@item @b{endstate} +@cindex endstate +@*An buggy old command that would not really work since background polling would wipe out the global endstate @xref{arm7_9 fast_memory_access}. @item @b{arm7_9 force_hw_bkpts} @*Use @command{gdb_breakpoint_override} instead. Note that GDB will use hardware breakpoints diff --git a/src/jtag/jtag.c b/src/jtag/jtag.c index 2e122fb17..682144559 100644 --- a/src/jtag/jtag.c +++ b/src/jtag/jtag.c @@ -227,7 +227,6 @@ static int handle_jtag_ntrst_delay_command(struct command_context_s *cmd_ctx, ch static int handle_scan_chain_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc); -static int handle_endstate_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc); static int handle_jtag_reset_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc); static int handle_runtest_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc); static int handle_irscan_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc); @@ -1659,8 +1658,6 @@ int jtag_register_commands(struct command_context_s *cmd_ctx) register_command(cmd_ctx, NULL, "scan_chain", handle_scan_chain_command, COMMAND_EXEC, "print current scan chain configuration"); - register_command(cmd_ctx, NULL, "endstate", handle_endstate_command, - COMMAND_EXEC, "finish JTAG operations in "); register_command(cmd_ctx, NULL, "jtag_reset", handle_jtag_reset_command, COMMAND_EXEC, "toggle reset lines "); register_command(cmd_ctx, NULL, "runtest", handle_runtest_command, @@ -2215,26 +2212,6 @@ static int handle_jtag_khz_command(struct command_context_s *cmd_ctx, char *cmd, } -static int handle_endstate_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc) -{ - if (argc < 1) - return ERROR_COMMAND_SYNTAX_ERROR; - - tap_state_t state = tap_state_by_name(args[0]); - if (state < 0) - { - command_print( cmd_ctx, "Invalid state name: %s\n", args[0] ); - return ERROR_COMMAND_SYNTAX_ERROR; - } - jtag_set_end_state(state); - jtag_execute_queue(); - - command_print(cmd_ctx, "current endstate: %s", - tap_state_name(cmd_queue_end_state)); - - return ERROR_OK; -} - static int handle_jtag_reset_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc) { int trst = -1;