The endstate now reports the endstate of the queue instead of
authoroharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60>
Tue, 8 Apr 2008 09:03:49 +0000 (09:03 +0000)
committeroharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60>
Tue, 8 Apr 2008 09:03:49 +0000 (09:03 +0000)
reading endstate variable internal to the driver.

git-svn-id: svn://svn.berlios.de/openocd/trunk@546 b42882b7-edfa-0310-969c-e2dbd0fdcd60

src/jtag/bitbang.c
src/jtag/jtag.c

index 16b5f1918b3fe6f317d3234b8d2c6fe4cc9a92ab..97ea94e04bad7767adaea3db08cb91ce900da4d4 100644 (file)
@@ -43,6 +43,8 @@ int bitbang_execute_queue(void);
 
 /* The bitbang driver leaves the TCK 0 when in idle */
 
+static enum tap_state end_state;
+static enum tap_state cur_state;
 
 void bitbang_end_state(enum tap_state state)
 {
index 9a95de42b9ea152e02dd4178ea1b925ffa31c1a9..3d2fb294d62d02e5fd962431a53b36c2b16725ea 100644 (file)
@@ -109,6 +109,11 @@ char* jtag_event_strings[] =
        "JTAG controller reset(tms or TRST)"
 };
 
+/* kludge!!!! these are just global variables that the
+ * interface use internally. They really belong
+ * inside the drivers, but we don't want to break
+ * linking the drivers!!!!
+ */
 enum tap_state end_state = TAP_TLR;
 enum tap_state cur_state = TAP_TLR;
 int jtag_trst = 0;
@@ -1812,7 +1817,7 @@ int handle_endstate_command(struct command_context_s *cmd_ctx, char *cmd, char *
                        }
                }
        }
-       command_print(cmd_ctx, "current endstate: %s", tap_state_strings[end_state]);
+       command_print(cmd_ctx, "current endstate: %s", tap_state_strings[cmd_queue_end_state]);
        
        return ERROR_OK;
 }