Committed.

Stop modifying global end state from jtag_add_xxx() calls...


-- 
Øyvind Harboe
Embedded software and hardware consulting services
http://consulting.zylin.com
### Eclipse Workspace Patch 1.0
#P openocd
Index: src/jtag/zy1000.c
===================================================================
--- src/jtag/zy1000.c   (revision 2046)
+++ src/jtag/zy1000.c   (working copy)
@@ -517,7 +517,7 @@
                tap_state_t end_state;
                if (nextTap==NULL)
                {
-                       end_state = cmd_queue_end_state;
+                       end_state = state;
                } else
                {
                        end_state = TAP_IRSHIFT;
@@ -568,7 +568,7 @@
 
 int interface_jtag_add_plain_ir_scan(int num_fields, const scan_field_t 
*fields, tap_state_t state)
 {
-       scanFields(num_fields, fields, TAP_IRSHIFT, cmd_queue_end_state);
+       scanFields(num_fields, fields, TAP_IRSHIFT, state);
 
        return ERROR_OK;
 }
@@ -587,7 +587,7 @@
                tap_state_t end_state;
                if (nextTap==NULL)
                {
-                       end_state = cmd_queue_end_state;
+                       end_state = state;
                } else
                {
                        end_state = TAP_DRSHIFT;
@@ -621,7 +621,7 @@
 
 int interface_jtag_add_plain_dr_scan(int num_fields, const scan_field_t 
*fields, tap_state_t state)
 {
-       scanFields(num_fields, fields, TAP_DRSHIFT, cmd_queue_end_state);
+       scanFields(num_fields, fields, TAP_DRSHIFT, state);
        return ERROR_OK;
 }
 
@@ -693,7 +693,7 @@
 
 int interface_jtag_add_clocks(int num_cycles)
 {
-       return zy1000_jtag_add_clocks(num_cycles, cmd_queue_cur_state, 
cmd_queue_end_state);
+       return zy1000_jtag_add_clocks(num_cycles, cmd_queue_cur_state, 
cmd_queue_cur_state);
 }
 
 int interface_jtag_add_sleep(u32 us)
Index: src/jtag/jtag.c
===================================================================
--- src/jtag/jtag.c     (revision 2043)
+++ src/jtag/jtag.c     (working copy)
@@ -396,9 +396,7 @@
 
        assert(state!=TAP_INVALID);
 
-       jtag_add_end_state(state);
-
-       cmd_queue_cur_state = cmd_queue_end_state;
+       cmd_queue_cur_state = state;
 }
 
 void jtag_alloc_in_value32(scan_field_t *field)
@@ -411,7 +409,7 @@
        int retval;
        jtag_prelude(state);
 
-       retval=interface_jtag_add_ir_scan(in_num_fields, in_fields, 
cmd_queue_end_state);
+       retval=interface_jtag_add_ir_scan(in_num_fields, in_fields, state);
        if (retval!=ERROR_OK)
                jtag_error=retval;
 
@@ -460,7 +458,7 @@
 
        jtag_prelude(state);
 
-       retval=interface_jtag_add_plain_ir_scan(in_num_fields, in_fields, 
cmd_queue_end_state);
+       retval=interface_jtag_add_plain_ir_scan(in_num_fields, in_fields, 
state);
        if (retval!=ERROR_OK)
                jtag_error=retval;
 }
@@ -548,7 +546,7 @@
 
        jtag_prelude(state);
 
-       retval=interface_jtag_add_dr_scan(in_num_fields, in_fields, 
cmd_queue_end_state);
+       retval=interface_jtag_add_dr_scan(in_num_fields, in_fields, state);
        if (retval!=ERROR_OK)
                jtag_error=retval;
 }
@@ -567,7 +565,7 @@
 
        jtag_prelude(state);
 
-       retval=interface_jtag_add_plain_dr_scan(in_num_fields, in_fields, 
cmd_queue_end_state);
+       retval=interface_jtag_add_plain_dr_scan(in_num_fields, in_fields, 
state);
        if (retval!=ERROR_OK)
                jtag_error=retval;
 }
@@ -578,13 +576,11 @@
 {
        assert(end_state != TAP_INVALID);
 
-       cmd_queue_end_state = end_state;
-
-       cmd_queue_cur_state = cmd_queue_end_state;
+       cmd_queue_cur_state = end_state;
 
        interface_jtag_add_dr_out(tap,
                        num_fields, num_bits, value,
-                       cmd_queue_end_state);
+                       end_state);
 }
 
 void jtag_add_tlr(void)
@@ -644,7 +640,7 @@
        jtag_prelude(state);
 
        /* executed by sw or hw fifo */
-       retval=interface_jtag_add_runtest(num_cycles, cmd_queue_end_state);
+       retval=interface_jtag_add_runtest(num_cycles, state);
        if (retval!=ERROR_OK)
                jtag_error=retval;
 }
_______________________________________________
Openocd-development mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to