And then the last of the big in_handler changes is committed.

svn head now contains the entire in_handler story, which at this point
is the right thing to do regardless of what happens next.

Now it is time for cleanup according to my plan.

As there are no known functional regressions, performance is at the
top of my list.

W.r.t. performance, the most important thing at this point is to
get some profiling numbers to identify the correct places to
put the effort.

Once I know the sites, I'll get right on fixing them.



-- 
Øyvind Harboe
Embedded software and hardware consulting services
http://consulting.zylin.com
### Eclipse Workspace Patch 1.0
#P openocd
Index: src/target/arm720t.c
===================================================================
--- src/target/arm720t.c        (revision 1670)
+++ src/target/arm720t.c        (working copy)
@@ -113,13 +113,13 @@
        fields[0].num_bits = 1;
        fields[0].out_value = &instruction_buf;
        fields[0].in_value = NULL;
-       fields[0].in_handler = NULL;
+       
 
        fields[1].tap = jtag_info->tap;
        fields[1].num_bits = 32;
        fields[1].out_value = out_buf;
        fields[1].in_value = NULL;
-       fields[1].in_handler = NULL;
+       
        if (in)
        {
                u8 tmp[4];
Index: src/target/arm_adi_v5.c
===================================================================
--- src/target/arm_adi_v5.c     (revision 1670)
+++ src/target/arm_adi_v5.c     (working copy)
@@ -81,7 +81,7 @@
        fields[0].in_value = ack;
 
 
-       fields[0].in_handler = NULL;
+       
 
 
        fields[1].tap = jtag_info->tap;
@@ -89,7 +89,7 @@
        fields[1].out_value = outvalue;
 
        fields[1].in_value = invalue;
-       fields[1].in_handler = NULL;
+       
 
 
 
@@ -114,7 +114,7 @@
        buf_set_u32(&out_addr_buf, 0, 3, ((reg_addr >> 1) & 0x6) | (RnW & 0x1));
        fields[0].out_value = &out_addr_buf;
        fields[0].in_value = ack;
-       fields[0].in_handler = NULL;
+       
 
 
        fields[1].tap = jtag_info->tap;
@@ -122,7 +122,7 @@
        buf_set_u32(out_value_buf, 0, 32, outvalue);
        fields[1].out_value = out_value_buf;
        fields[1].in_value = NULL;
-       fields[1].in_handler = NULL;
+       
 
        if (invalue)
        {
Index: src/pld/virtex2.c
===================================================================
--- src/pld/virtex2.c   (revision 1670)
+++ src/pld/virtex2.c   (working copy)
@@ -60,7 +60,7 @@
                field.in_value = NULL;
 
 
-               field.in_handler = NULL;
+
 
 
                jtag_add_ir_scan(1, &field, TAP_IDLE);
@@ -84,7 +84,6 @@
        scan_field.num_bits = num_words * 32;
        scan_field.out_value = values;
        scan_field.in_value = NULL;
-       scan_field.in_handler = NULL;
 
        for (i = 0; i < num_words; i++)
                buf_set_u32(values + 4 * i, 0, 32, flip_u32(*words++, 32));
@@ -109,7 +108,6 @@
        scan_field.out_value = NULL;
        u8 tmp[4];
        scan_field.in_value = tmp;
-       scan_field.in_handler = NULL;
 
        virtex2_set_instr(virtex2_info->tap, 0x4); /* CFG_OUT */
 
@@ -159,7 +157,7 @@
        field.in_value = NULL;
 
 
-       field.in_handler = NULL;
+
 
 
        if ((retval = xilinx_read_bit_file(&bit_file, filename)) != ERROR_OK)
Index: src/target/xscale.c
===================================================================
--- src/target/xscale.c (revision 1670)
+++ src/target/xscale.c (working copy)
@@ -270,7 +270,7 @@
        fields[1].num_bits = 32;
        fields[1].out_value = NULL;
        fields[1].in_value = xscale->reg_cache->reg_list[XSCALE_DCSR].value;
-       fields[1].in_handler = NULL;
+       
 
        fields[2].tap = xscale->jtag_info.tap;
        fields[2].num_bits = 1;
@@ -346,7 +346,7 @@
        fields[1].out_value = NULL;
        u8 tmp[4];
        fields[1].in_value = tmp;
-       fields[1].in_handler = NULL;
+       
 
        fields[2].tap = xscale->jtag_info.tap;
        fields[2].num_bits = 1;
@@ -462,7 +462,7 @@
        fields[1].num_bits = 32;
        fields[1].out_value = NULL;
        fields[1].in_value = xscale->reg_cache->reg_list[XSCALE_TX].value;
-       fields[1].in_handler = NULL;
+       
 
        fields[2].tap = xscale->jtag_info.tap;
        fields[2].num_bits = 1;
@@ -554,7 +554,7 @@
        fields[1].num_bits = 32;
        fields[1].out_value = xscale->reg_cache->reg_list[XSCALE_RX].value;
        fields[1].in_value = NULL;
-       fields[1].in_handler = NULL;
+       
 
        fields[2].tap = xscale->jtag_info.tap;
        fields[2].num_bits = 1;
@@ -726,7 +726,7 @@
        fields[1].num_bits = 32;
        fields[1].out_value = xscale->reg_cache->reg_list[XSCALE_DCSR].value;
        fields[1].in_value = NULL;
-       fields[1].in_handler = NULL;
+       
 
        fields[2].tap = xscale->jtag_info.tap;
        fields[2].num_bits = 1;
@@ -796,7 +796,7 @@
        fields[0].in_value = NULL;
 
 
-       fields[0].in_handler = NULL;
+       
 
 
        fields[1].tap = xscale->jtag_info.tap;
@@ -806,7 +806,7 @@
        fields[1].in_value = NULL;
 
 
-       fields[1].in_handler = NULL;
+       
 
 
        jtag_add_dr_scan(2, fields, TAP_INVALID);
@@ -858,7 +858,7 @@
        fields[0].in_value = NULL;
 
 
-       fields[0].in_handler = NULL;
+       
 
 
        fields[1].tap = xscale->jtag_info.tap;
@@ -868,7 +868,7 @@
        fields[1].in_value = NULL;
 
 
-       fields[1].in_handler = NULL;
+       
 
 
        jtag_add_dr_scan(2, fields, TAP_INVALID);
Index: src/svf/svf.c
===================================================================
--- src/svf/svf.c       (revision 1670)
+++ src/svf/svf.c       (working copy)
@@ -985,7 +985,7 @@
                        field.in_value = &svf_tdi_buffer[svf_buffer_index];
                        
                        
-                       field.in_handler = NULL;
+                       
                        
                        jtag_add_plain_dr_scan(1, &field, 
svf_para.dr_end_state);
 
@@ -1086,7 +1086,7 @@
                        field.in_value = &svf_tdi_buffer[svf_buffer_index];
                        
                        
-                       field.in_handler = NULL;
+                       
                        
                        jtag_add_plain_ir_scan(1, &field, 
svf_para.ir_end_state);
 
Index: src/xsvf/xsvf.c
===================================================================
--- src/xsvf/xsvf.c     (revision 1670)
+++ src/xsvf/xsvf.c     (working copy)
@@ -719,7 +719,7 @@
                                        field.in_value = NULL;
 
 
-                                       field.in_handler = NULL;
+                                       
 
                                        if (tap == NULL)
                                                jtag_add_plain_ir_scan(1, 
&field, my_end_state);
Index: src/target/feroceon.c
===================================================================
--- src/target/feroceon.c       (revision 1670)
+++ src/target/feroceon.c       (working copy)
@@ -137,7 +137,7 @@
        fields[0].out_value = out_buf;
        
        fields[0].in_value = NULL;
-       fields[0].in_handler = NULL;
+       
        
        
        
@@ -149,7 +149,7 @@
        fields[1].in_value = NULL;
        
        
-       fields[1].in_handler = NULL;
+       
        
 
        fields[2].tap = jtag_info->tap;
@@ -159,7 +159,7 @@
        fields[2].in_value = NULL;
        
        
-       fields[2].in_handler = NULL;
+       
        
 
        jtag_add_dr_scan(3, fields, TAP_INVALID);
Index: src/target/embeddedice.c
===================================================================
--- src/target/embeddedice.c    (revision 1670)
+++ src/target/embeddedice.c    (working copy)
@@ -252,21 +252,21 @@
        fields[0].num_bits = 32;
        fields[0].out_value = reg->value;
        fields[0].in_value = NULL;
-       fields[0].in_handler = NULL;
+       
 
        fields[1].tap = ice_reg->jtag_info->tap;
        fields[1].num_bits = 5;
        fields[1].out_value = field1_out;
        buf_set_u32(fields[1].out_value, 0, 5, reg_addr);
        fields[1].in_value = NULL;
-       fields[1].in_handler = NULL;
+       
 
        fields[2].tap = ice_reg->jtag_info->tap;
        fields[2].num_bits = 1;
        fields[2].out_value = field2_out;
        buf_set_u32(fields[2].out_value, 0, 1, 0);
        fields[2].in_value = NULL;
-       fields[2].in_handler = NULL;
+       
 
        jtag_add_dr_scan(3, fields, TAP_INVALID);
 
@@ -304,21 +304,21 @@
        fields[0].out_value = NULL;
        u8 tmp[4];
        fields[0].in_value = tmp;
-       fields[0].in_handler = NULL;
+       
 
        fields[1].tap = jtag_info->tap;
        fields[1].num_bits = 5;
        fields[1].out_value = field1_out;
        buf_set_u32(fields[1].out_value, 0, 5, 
embeddedice_reg_arch_info[EICE_COMMS_DATA]);
        fields[1].in_value = NULL;
-       fields[1].in_handler = NULL;
+       
 
        fields[2].tap = jtag_info->tap;
        fields[2].num_bits = 1;
        fields[2].out_value = field2_out;
        buf_set_u32(fields[2].out_value, 0, 1, 0);
        fields[2].in_value = NULL;
-       fields[2].in_handler = NULL;
+       
 
        jtag_add_dr_scan(3, fields, TAP_INVALID);
 
@@ -412,7 +412,7 @@
        fields[0].in_value = NULL;
 
 
-       fields[0].in_handler = NULL;
+       
 
 
        fields[1].tap = jtag_info->tap;
@@ -423,7 +423,7 @@
        fields[1].in_value = NULL;
 
 
-       fields[1].in_handler = NULL;
+       
 
 
        fields[2].tap = jtag_info->tap;
@@ -434,7 +434,7 @@
        fields[2].in_value = NULL;
 
 
-       fields[2].in_handler = NULL;
+       
 
 
        while (size > 0)
@@ -481,7 +481,7 @@
        fields[0].in_value = field0_in;
 
 
-       fields[0].in_handler = NULL;
+       
 
 
        fields[1].tap = jtag_info->tap;
@@ -492,7 +492,7 @@
        fields[1].in_value = NULL;
 
 
-       fields[1].in_handler = NULL;
+       
 
 
        fields[2].tap = jtag_info->tap;
@@ -503,7 +503,7 @@
        fields[2].in_value = NULL;
 
 
-       fields[2].in_handler = NULL;
+       
 
 
        jtag_add_dr_scan(3, fields, TAP_INVALID);
Index: src/target/arm926ejs.c
===================================================================
--- src/target/arm926ejs.c      (revision 1670)
+++ src/target/arm926ejs.c      (working copy)
@@ -96,6 +96,10 @@
 
 int arm926ejs_catch_broken_irscan(u8 *captured, void *priv, scan_field_t 
*field)
 {
+       /* FIX!!!! this code should be reenabled. For now it does not check
+        * the queue...*/
+       return 0;
+#if 0
        /* The ARM926EJ-S' instruction register is 4 bits wide */
        u8 t = *captured & 0xf;
        u8 t2 = *field->in_check_value & 0xf;
@@ -109,6 +113,7 @@
                return ERROR_OK;
        }
        return ERROR_JTAG_QUEUE_FAILED;;
+#endif
 }
 
 #define ARM926EJS_CP15_ADDR(opcode_1, opcode_2, CRn, CRm) ((opcode_1 << 11) | 
(opcode_2 << 8) | (CRn << 4) | (CRm << 0))
@@ -139,26 +144,26 @@
        fields[0].out_value = NULL;
        u8 tmp[4];
        fields[0].in_value = tmp;
-       fields[0].in_handler = NULL;
+
 
        fields[1].tap = jtag_info->tap;
        fields[1].num_bits = 1;
        fields[1].out_value = &access;
        fields[1].in_value = &access;
-       fields[1].in_handler = NULL;
+
 
        fields[2].tap = jtag_info->tap;
        fields[2].num_bits = 14;
        fields[2].out_value = address_buf;
        fields[2].in_value = NULL;
-       fields[2].in_handler = NULL;
+
 
 
        fields[3].tap = jtag_info->tap;
        fields[3].num_bits = 1;
        fields[3].out_value = &nr_w_buf;
        fields[3].in_value = NULL;
-       fields[3].in_handler = NULL;
+
 
        jtag_add_dr_scan(4, fields, TAP_INVALID);
 
@@ -217,7 +222,7 @@
        fields[0].in_value = NULL;
 
 
-       fields[0].in_handler = NULL;
+
 
 
        fields[1].tap = jtag_info->tap;
@@ -227,7 +232,7 @@
        fields[1].in_value = &access;
 
 
-       fields[1].in_handler = NULL;
+
 
 
        fields[2].tap = jtag_info->tap;
@@ -237,7 +242,7 @@
        fields[2].in_value = NULL;
 
 
-       fields[2].in_handler = NULL;
+
 
 
        fields[3].tap = jtag_info->tap;
@@ -247,7 +252,7 @@
        fields[3].in_value = NULL;
 
 
-       fields[3].in_handler = NULL;
+
 
 
        jtag_add_dr_scan(4, fields, TAP_INVALID);
Index: src/target/avrt.c
===================================================================
--- src/target/avrt.c   (revision 1670)
+++ src/target/avrt.c   (working copy)
@@ -126,10 +126,10 @@
 int avr_target_create(struct target_s *target, Jim_Interp *interp)
 {
        avr_common_t *avr = calloc(1, sizeof(avr_common_t));
-       
+
        avr->jtag_info.tap = target->tap;
        target->arch_info = avr;
-       
+
        return ERROR_OK;
 }
 
@@ -157,7 +157,7 @@
        {
                target->state = TARGET_HALTED;
        }
-       
+
        LOG_DEBUG("%s", __FUNCTION__);
        return ERROR_OK;
 }
@@ -183,7 +183,7 @@
 int avr_assert_reset(target_t *target)
 {
        target->state = TARGET_RESET;
-       
+
        LOG_DEBUG("%s", __FUNCTION__);
        return ERROR_OK;
 }
@@ -191,7 +191,7 @@
 int avr_deassert_reset(target_t *target)
 {
        target->state = TARGET_RUNNING;
-       
+
        LOG_DEBUG("%s", __FUNCTION__);
        return ERROR_OK;
 }
@@ -225,21 +225,17 @@
                LOG_ERROR("invalid ir_len");
                return ERROR_FAIL;
        }
-       
+
        {
                scan_field_t field[1];
-               
+
                field[0].tap = tap;
                field[0].num_bits = tap->ir_length;
                field[0].out_value = ir_out;
                field[0].in_value = ir_in;
-               field[0].in_check_value = NULL;
-               field[0].in_check_mask = NULL;
-               field[0].in_handler = NULL;
-               field[0].in_handler_priv = NULL;
                jtag_add_plain_ir_scan(sizeof(field) / sizeof(field[0]), field, 
TAP_IDLE);
        }
-       
+
        return ERROR_OK;
 }
 
@@ -250,21 +246,17 @@
                LOG_ERROR("invalid tap");
                return ERROR_FAIL;
        }
-       
+
        {
                scan_field_t field[1];
-               
+
                field[0].tap = tap;
                field[0].num_bits = dr_len;
                field[0].out_value = dr_out;
                field[0].in_value = dr_in;
-               field[0].in_check_value = NULL;
-               field[0].in_check_mask = NULL;
-               field[0].in_handler = NULL;
-               field[0].in_handler_priv = NULL;
                jtag_add_plain_dr_scan(sizeof(field) / sizeof(field[0]), field, 
TAP_IDLE);
        }
-       
+
        return ERROR_OK;
 }
 
@@ -275,9 +267,9 @@
                LOG_ERROR("ir_len overflow, maxium is 8");
                return ERROR_FAIL;
        }
-       
+
        mcu_write_ir(tap, ir_in, &ir_out, ir_len, rti);
-       
+
        return ERROR_OK;
 }
 
@@ -288,9 +280,9 @@
                LOG_ERROR("dr_len overflow, maxium is 8");
                return ERROR_FAIL;
        }
-       
+
        mcu_write_dr(tap, dr_in, &dr_out, dr_len, rti);
-       
+
        return ERROR_OK;
 }
 
@@ -301,9 +293,9 @@
                LOG_ERROR("ir_len overflow, maxium is 16");
                return ERROR_FAIL;
        }
-       
+
        mcu_write_ir(tap, (u8*)ir_in, (u8*)&ir_out, ir_len, rti);
-       
+
        return ERROR_OK;
 }
 
@@ -314,9 +306,9 @@
                LOG_ERROR("dr_len overflow, maxium is 16");
                return ERROR_FAIL;
        }
-       
+
        mcu_write_dr(tap, (u8*)dr_in, (u8*)&dr_out, dr_len, rti);
-       
+
        return ERROR_OK;
 }
 
@@ -327,9 +319,9 @@
                LOG_ERROR("ir_len overflow, maxium is 32");
                return ERROR_FAIL;
        }
-       
+
        mcu_write_ir(tap, (u8*)ir_in, (u8*)&ir_out, ir_len, rti);
-       
+
        return ERROR_OK;
 }
 
@@ -340,9 +332,9 @@
                LOG_ERROR("dr_len overflow, maxium is 32");
                return ERROR_FAIL;
        }
-       
+
        mcu_write_dr(tap, (u8*)dr_in, (u8*)&dr_out, dr_len, rti);
-       
+
        return ERROR_OK;
 }
 
Index: src/target/arm966e.c
===================================================================
--- src/target/arm966e.c        (revision 1670)
+++ src/target/arm966e.c        (working copy)
@@ -188,19 +188,19 @@
        fields[0].num_bits = 32;
        fields[0].out_value = NULL;
        fields[0].in_value = NULL;
-       fields[0].in_handler = NULL;
+       
 
        fields[1].tap = jtag_info->tap;
        fields[1].num_bits = 6;
        fields[1].out_value = &reg_addr_buf;
        fields[1].in_value = NULL;
-       fields[1].in_handler = NULL;
+       
 
        fields[2].tap = jtag_info->tap;
        fields[2].num_bits = 1;
        fields[2].out_value = &nr_w_buf;
        fields[2].in_value = NULL;
-       fields[2].in_handler = NULL;
+       
 
        jtag_add_dr_scan(3, fields, TAP_INVALID);
 
@@ -250,7 +250,7 @@
        fields[0].in_value = NULL;
 
 
-       fields[0].in_handler = NULL;
+       
 
 
        fields[1].tap = jtag_info->tap;
@@ -260,7 +260,7 @@
        fields[1].in_value = NULL;
 
 
-       fields[1].in_handler = NULL;
+       
 
 
        fields[2].tap = jtag_info->tap;
@@ -270,7 +270,7 @@
        fields[2].in_value = NULL;
 
 
-       fields[2].in_handler = NULL;
+       
 
 
        jtag_add_dr_scan(3, fields, TAP_INVALID);
Index: src/target/etm.c
===================================================================
--- src/target/etm.c    (revision 1670)
+++ src/target/etm.c    (working copy)
@@ -340,21 +340,21 @@
        fields[0].num_bits = 32;
        fields[0].out_value = reg->value;
        fields[0].in_value = NULL;
-       fields[0].in_handler = NULL;
+       
 
        fields[1].tap = etm_reg->jtag_info->tap;
        fields[1].num_bits = 7;
        fields[1].out_value = malloc(1);
        buf_set_u32(fields[1].out_value, 0, 7, reg_addr);
        fields[1].in_value = NULL;
-       fields[1].in_handler = NULL;
+       
 
        fields[2].tap = etm_reg->jtag_info->tap;
        fields[2].num_bits = 1;
        fields[2].out_value = malloc(1);
        buf_set_u32(fields[2].out_value, 0, 1, 0);
        fields[2].in_value = NULL;
-       fields[2].in_handler = NULL;
+       
 
        jtag_add_dr_scan(3, fields, TAP_INVALID);
 
@@ -424,7 +424,7 @@
        fields[0].in_value = NULL;
 
 
-       fields[0].in_handler = NULL;
+       
 
 
        fields[1].tap = etm_reg->jtag_info->tap;
@@ -435,7 +435,7 @@
        fields[1].in_value = NULL;
 
 
-       fields[1].in_handler = NULL;
+       
 
 
        fields[2].tap = etm_reg->jtag_info->tap;
@@ -446,7 +446,7 @@
        fields[2].in_value = NULL;
 
 
-       fields[2].in_handler = NULL;
+       
 
 
        jtag_add_dr_scan(3, fields, TAP_INVALID);
Index: src/target/mips_ejtag.c
===================================================================
--- src/target/mips_ejtag.c     (revision 1670)
+++ src/target/mips_ejtag.c     (working copy)
@@ -53,7 +53,7 @@
                field.in_value = NULL;
                
                
-               field.in_handler = NULL;
+               
                
                jtag_add_ir_scan(1, &field, TAP_INVALID);
        }
@@ -76,7 +76,7 @@
        field.in_value = (void*)idcode;
        
        
-       field.in_handler = NULL;
+       
        
        jtag_add_dr_scan(1, &field, TAP_INVALID);
 
@@ -103,7 +103,7 @@
        field.in_value = (void*)impcode;
        
        
-       field.in_handler = NULL;
+       
        
        jtag_add_dr_scan(1, &field, TAP_INVALID);
 
@@ -134,7 +134,7 @@
        field.in_value = (u8*)data;
        
        
-       field.in_handler = NULL;
+       
        
        jtag_add_dr_scan(1, &field, TAP_INVALID);
 
Index: src/flash/str9xpec.c
===================================================================
--- src/flash/str9xpec.c        (revision 1670)
+++ src/flash/str9xpec.c        (working copy)
@@ -129,7 +129,7 @@
                field.in_value = NULL;
                
                
-               field.in_handler = NULL;
+               
                
 
                jtag_add_ir_scan(1, &field, end_state);
@@ -155,7 +155,7 @@
        field.in_value = &status;
        
        
-       field.in_handler = NULL;
+       
        
 
        jtag_add_dr_scan(1, &field, TAP_IDLE);
@@ -247,7 +247,7 @@
        field.in_value = str9xpec_info->options;
        
        
-       field.in_handler = NULL;
+       
        
 
        jtag_add_dr_scan(1, &field, TAP_IDLE);
@@ -399,7 +399,7 @@
        field.in_value = NULL;
        
        
-       field.in_handler = NULL;
+       
        
 
        jtag_add_dr_scan(1, &field, TAP_IDLE);
@@ -413,7 +413,7 @@
        field.in_value = buffer;
        
        
-       field.in_handler = NULL;
+       
        
 
        jtag_add_dr_scan(1, &field, TAP_IRPAUSE);
@@ -515,7 +515,7 @@
        field.in_value = NULL;
        
        
-       field.in_handler = NULL;
+       
        
 
        jtag_add_dr_scan(1, &field, TAP_IDLE);
@@ -581,7 +581,7 @@
                field.in_value = &status;
                
                
-               field.in_handler = NULL;
+               
                
 
                jtag_add_dr_scan(1, &field, -1);
@@ -667,7 +667,7 @@
        field.in_value = NULL;
        
        
-       field.in_handler = NULL;
+       
        
 
        jtag_add_dr_scan(1, &field, -1);
@@ -756,7 +756,7 @@
                        field.in_value = NULL;
                        
                        
-                       field.in_handler = NULL;
+                       
                        
 
                        jtag_add_dr_scan(1, &field, TAP_IDLE);
@@ -774,7 +774,7 @@
                                field.in_value = scanbuf;
                                
                                
-                               field.in_handler = NULL;
+                               
                                
 
                                jtag_add_dr_scan(1, &field, -1);
@@ -816,7 +816,7 @@
                field.in_value = NULL;
                
                
-               field.in_handler = NULL;
+               
                
 
                jtag_add_dr_scan(1, &field, TAP_IDLE);
@@ -834,7 +834,7 @@
                        field.in_value = scanbuf;
                        
                        
-                       field.in_handler = NULL;
+                       
                        
 
                        jtag_add_dr_scan(1, &field, -1);
@@ -898,7 +898,7 @@
        field.in_value = buffer;
        
        
-       field.in_handler = NULL;
+       
        
 
        jtag_add_dr_scan(1, &field, TAP_IDLE);
@@ -1023,7 +1023,7 @@
        field.in_value = NULL;
        
        
-       field.in_handler = NULL;
+       
        
 
        jtag_add_dr_scan(1, &field, TAP_IDLE);
@@ -1041,7 +1041,7 @@
                field.in_value = &status;
                
                
-               field.in_handler = NULL;
+               
                
 
                jtag_add_dr_scan(1, &field, -1);
Index: src/target/etb.c
===================================================================
--- src/target/etb.c    (revision 1670)
+++ src/target/etb.c    (working copy)
@@ -74,7 +74,7 @@
                field.in_value = NULL;
 
 
-               field.in_handler = NULL;
+               
 
 
                jtag_add_ir_scan(1, &field, TAP_INVALID);
@@ -99,7 +99,7 @@
                field.in_value = NULL;
 
 
-               field.in_handler = NULL;
+               
 
 
                /* select INTEST instruction */
@@ -188,21 +188,21 @@
        fields[0].out_value = NULL;
        u8 tmp[4];
        fields[0].in_value = tmp;
-       fields[0].in_handler = NULL;
+       
 
        fields[1].tap = etb->tap;
        fields[1].num_bits = 7;
        fields[1].out_value = malloc(1);
        buf_set_u32(fields[1].out_value, 0, 7, 4);
        fields[1].in_value = NULL;
-       fields[1].in_handler = NULL;
+       
 
        fields[2].tap = etb->tap;
        fields[2].num_bits = 1;
        fields[2].out_value = malloc(1);
        buf_set_u32(fields[2].out_value, 0, 1, 0);
        fields[2].in_value = NULL;
-       fields[2].in_handler = NULL;
+       
 
        jtag_add_dr_scan(3, fields, TAP_INVALID);
 
@@ -250,7 +250,7 @@
        fields[0].in_value = NULL;
 
 
-       fields[0].in_handler = NULL;
+       
 
 
        fields[1].tap = etb_reg->etb->tap;
@@ -261,7 +261,7 @@
        fields[1].in_value = NULL;
 
 
-       fields[1].in_handler = NULL;
+       
 
 
        fields[2].tap = etb_reg->etb->tap;
@@ -272,7 +272,7 @@
        fields[2].in_value = NULL;
 
 
-       fields[2].in_handler = NULL;
+       
 
 
        jtag_add_dr_scan(3, fields, TAP_INVALID);
@@ -347,7 +347,7 @@
        fields[0].in_value = NULL;
 
 
-       fields[0].in_handler = NULL;
+       
 
 
        fields[1].tap = etb_reg->etb->tap;
@@ -358,7 +358,7 @@
        fields[1].in_value = NULL;
 
 
-       fields[1].in_handler = NULL;
+       
 
 
        fields[2].tap = etb_reg->etb->tap;
@@ -369,7 +369,7 @@
        fields[2].in_value = NULL;
 
 
-       fields[2].in_handler = NULL;
+       
 
 
        jtag_add_dr_scan(3, fields, TAP_INVALID);
Index: src/jtag/jtag.h
===================================================================
--- src/jtag/jtag.h     (revision 1670)
+++ src/jtag/jtag.h     (working copy)
@@ -272,11 +272,6 @@
        int         num_bits;           /* number of bits this field specifies 
(up to 32) */
        u8*         out_value;          /* value to be scanned into the device 
*/
        u8*         in_value;           /* pointer to a 32-bit memory location 
to take data scanned out */
-       /* in_check_value/mask, in_handler_error_handler, in_handler_priv can 
be used by the in handler, otherwise they contain garbage  */
-       u8*          in_check_value;    /* deprecated! only used from 
jtag_set_check_value. used to validate scan results */
-       u8*          in_check_mask;     /* deprecated! only used from 
jtag_set_check_value.  check specified bits against check_value */
-       in_handler_t in_handler;        /* deprecated! SET TO NULL. DO NOT USE! 
process received buffer using this handler */
-       void*        in_handler_priv;   /* deprecated! only used by obsolete 
in_handler implementations */
 } scan_field_t;
 
 enum scan_type {
@@ -736,7 +731,6 @@
 
 };
 
-extern void           jtag_set_check_value(scan_field_t* field, u8* value, u8* 
mask, struct invalidstruct *obsolete);
 /* execute jtag queue and check value and use mask if mask is != NULL. invokes
  * jtag_set_error() with any error. */
 extern void jtag_check_value_mask(scan_field_t *field, u8 *value, u8 *mask);
Index: src/target/arm11_dbgtap.c
===================================================================
--- src/target/arm11_dbgtap.c   (revision 1670)
+++ src/target/arm11_dbgtap.c   (working copy)
@@ -87,11 +87,6 @@
 {
        field->tap                      = arm11->jtag_info.tap;
        field->num_bits                 = num_bits;
-       field->in_check_mask    = NULL;
-       field->in_check_value   = NULL;
-       field->in_handler               = NULL;
-       field->in_handler_priv  = NULL;
-
        field->out_value                = out_data;
        field->in_value                 = in_data;
 }
Index: src/target/arm9tdmi.c
===================================================================
--- src/target/arm9tdmi.c       (revision 1670)
+++ src/target/arm9tdmi.c       (working copy)
@@ -132,7 +132,7 @@
                fields[0].in_value = databus;
 
 
-               fields[0].in_handler = NULL;
+               
 
 
                fields[1].tap = arm7_9->jtag_info.tap;
@@ -142,7 +142,7 @@
                fields[1].in_value = &debug_reason;
 
 
-               fields[1].in_handler = NULL;
+               
 
 
                fields[2].tap = arm7_9->jtag_info.tap;
@@ -152,7 +152,7 @@
                fields[2].in_value = instructionbus;
 
 
-               fields[2].in_handler = NULL;
+               
 
 
                if((retval = arm_jtag_scann(&arm7_9->jtag_info, 0x1)) != 
ERROR_OK)
@@ -217,20 +217,20 @@
        fields[0].num_bits = 32;
        fields[0].out_value = out_buf;
        fields[0].in_value = NULL;
-       fields[0].in_handler = NULL;
+       
 
        fields[1].tap = jtag_info->tap;
        fields[1].num_bits = 3;
        fields[1].out_value = &sysspeed_buf;
        fields[1].in_value = NULL;
-       fields[1].in_handler = NULL;
+       
 
 
        fields[2].tap = jtag_info->tap;
        fields[2].num_bits = 32;
        fields[2].out_value = instr_buf;
        fields[2].in_value = NULL;
-       fields[2].in_handler = NULL;
+       
 
        if (in)
        {
@@ -285,19 +285,19 @@
        fields[0].out_value = NULL;
        u8 tmp[4];
        fields[0].in_value = tmp;
-       fields[0].in_handler = NULL;
+       
 
        fields[1].tap = jtag_info->tap;
        fields[1].num_bits = 3;
        fields[1].out_value = NULL;
        fields[1].in_value = NULL;
-       fields[1].in_handler = NULL;
+       
 
        fields[2].tap = jtag_info->tap;
        fields[2].num_bits = 32;
        fields[2].out_value = NULL;
        fields[2].in_value = NULL;
-       fields[2].in_handler = NULL;
+       
 
        jtag_add_dr_scan_now(3, fields, TAP_INVALID);
 
@@ -350,19 +350,19 @@
        fields[0].out_value = NULL;
        u8 tmp[4];
        fields[0].in_value = tmp;
-       fields[0].in_handler = NULL;
+       
 
        fields[1].tap = jtag_info->tap;
        fields[1].num_bits = 3;
        fields[1].out_value = NULL;
        fields[1].in_value = NULL;
-       fields[1].in_handler = NULL;
+       
 
        fields[2].tap = jtag_info->tap;
        fields[2].num_bits = 32;
        fields[2].out_value = NULL;
        fields[2].in_value = NULL;
-       fields[2].in_handler = NULL;
+       
 
        jtag_add_dr_scan_now(3, fields, TAP_INVALID);
 
Index: src/jtag/bitq.c
===================================================================
--- src/jtag/bitq.c     (revision 1670)
+++ src/jtag/bitq.c     (working copy)
@@ -66,7 +66,7 @@
                        while 
(bitq_in_state.field_idx<bitq_in_state.cmd->cmd.scan->num_fields)
                        {
                                field = 
&bitq_in_state.cmd->cmd.scan->fields[bitq_in_state.field_idx];
-                               if (field->in_value || field->in_handler)
+                               if (field->in_value)
                                {
                                        if (bitq_in_state.bit_pos==0)
                                        {
@@ -124,12 +124,6 @@
                                                        in_mask <<= 1;
                                                bitq_in_state.bit_pos++;
                                        }
-
-
-                                       if (field->in_handler && 
bitq_in_state.status==ERROR_OK)
-                                       {
-                                               bitq_in_state.status = 
(*field->in_handler)(in_buff, field->in_handler_priv, field);
-                                       }
                                }
 
                                bitq_in_state.field_idx++;  /* advance to next 
field */
@@ -238,7 +232,7 @@
        u8* out_ptr;
        u8  out_mask;
 
-       if (field->in_value || field->in_handler)
+       if (field->in_value)
                tdo_req = 1;
        else
                tdo_req = 0;
Index: src/jtag/zy1000.c
===================================================================
--- src/jtag/zy1000.c   (revision 1670)
+++ src/jtag/zy1000.c   (working copy)
@@ -468,24 +468,6 @@
                if (fields[i].in_value!=NULL)
                {
                        inBuffer=fields[i].in_value;
-               } else if (fields[i].in_handler!=NULL)
-               {
-                       if (in_buff_size*8<num_bits)
-                       {
-                               // we need more space
-                               if (in_buff!=NULL)
-                                       free(in_buff);
-                               in_buff=NULL;
-                               in_buff_size=(num_bits+7)/8;
-                               in_buff=malloc(in_buff_size);
-                               if (in_buff==NULL)
-                               {
-                                       LOG_ERROR("Out of memory");
-                                       jtag_error=ERROR_JTAG_QUEUE_FAILED;
-                                       return;
-                               }
-                       }
-                       inBuffer=in_buff;
                }
 
                // here we shuffle N bits out/in
@@ -535,17 +517,6 @@
                        }
                        j+=k;
                }
-
-               if (fields[i].in_handler!=NULL)
-               {
-                       // invoke callback
-                       int r=fields[i].in_handler(inBuffer, 
fields[i].in_handler_priv, fields+i);
-                       if (r!=ERROR_OK)
-                       {
-                               /* this will cause jtag_execute_queue() to 
return an error */
-                               jtag_error=r;
-                       }
-               }
        }
 }
 
@@ -577,15 +548,6 @@
                        {
                                found = 1;
 
-                               if 
((jtag_verify_capture_ir)&&(fields[j].in_handler==NULL))
-                               {
-                                       jtag_set_check_value(fields+j, 
tap->expected, tap->expected_mask, NULL);
-                               } else if (jtag_verify_capture_ir)
-                               {
-                                       fields[j].in_check_value = 
tap->expected;
-                                       fields[j].in_check_mask = 
tap->expected_mask;
-                               }
-
                                scanFields(1, fields+j, TAP_IRSHIFT, pause);
                                /* update device information */
                                buf_cpy(fields[j].out_value, tap->cur_instr, 
scan_size);
@@ -656,10 +618,6 @@
                        tmp.num_bits = 1;
                        tmp.out_value = NULL;
                        tmp.in_value = NULL;
-                       tmp.in_check_value = NULL;
-                       tmp.in_check_mask = NULL;
-                       tmp.in_handler = NULL;
-                       tmp.in_handler_priv = NULL;
 
                        scanFields(1, &tmp, TAP_DRSHIFT, pause);
                }
Index: src/jtag/jtag.c
===================================================================
--- src/jtag/jtag.c     (revision 1671)
+++ src/jtag/jtag.c     (working copy)
@@ -623,7 +623,6 @@
                (*last_cmd)->cmd.scan->fields[nth_tap].tap = tap;
                (*last_cmd)->cmd.scan->fields[nth_tap].num_bits = scan_size;
                (*last_cmd)->cmd.scan->fields[nth_tap].in_value = NULL;
-               (*last_cmd)->cmd.scan->fields[nth_tap].in_handler = NULL;       
/* disable verification by default */
 
                /* search the list */
                for (j = 0; j < num_fields; j++)
@@ -690,10 +689,6 @@
                (*last_cmd)->cmd.scan->fields[i].num_bits = num_bits;
                (*last_cmd)->cmd.scan->fields[i].out_value = 
buf_cpy(fields[i].out_value, cmd_queue_alloc(num_bytes), num_bits);
                (*last_cmd)->cmd.scan->fields[i].in_value = fields[i].in_value;
-               (*last_cmd)->cmd.scan->fields[i].in_check_value = 
fields[i].in_check_value;
-               (*last_cmd)->cmd.scan->fields[i].in_check_mask = 
fields[i].in_check_mask;
-               (*last_cmd)->cmd.scan->fields[i].in_handler = NULL;
-               (*last_cmd)->cmd.scan->fields[i].in_handler_priv = NULL;
        }
        return ERROR_OK;
 }
@@ -772,10 +767,7 @@
                                
(*last_cmd)->cmd.scan->fields[field_count].num_bits = scan_size;
                                
(*last_cmd)->cmd.scan->fields[field_count].out_value = 
buf_cpy(fields[j].out_value, cmd_queue_alloc(CEIL(scan_size, 8)), scan_size);
                                
(*last_cmd)->cmd.scan->fields[field_count].in_value = fields[j].in_value;
-                               
(*last_cmd)->cmd.scan->fields[field_count].in_check_value = 
fields[j].in_check_value;
-                               
(*last_cmd)->cmd.scan->fields[field_count].in_check_mask = 
fields[j].in_check_mask;
-                               
(*last_cmd)->cmd.scan->fields[field_count].in_handler = fields[j].in_handler;
-                               
(*last_cmd)->cmd.scan->fields[field_count++].in_handler_priv = 
fields[j].in_handler_priv;
+                               field_count++;
                        }
                }
                if (!found)
@@ -792,10 +784,7 @@
                        (*last_cmd)->cmd.scan->fields[field_count].num_bits = 1;
                        (*last_cmd)->cmd.scan->fields[field_count].out_value = 
NULL;
                        (*last_cmd)->cmd.scan->fields[field_count].in_value = 
NULL;
-                       
(*last_cmd)->cmd.scan->fields[field_count].in_check_value = NULL;
-                       
(*last_cmd)->cmd.scan->fields[field_count].in_check_mask = NULL;
-                       (*last_cmd)->cmd.scan->fields[field_count].in_handler = 
NULL;
-                       
(*last_cmd)->cmd.scan->fields[field_count++].in_handler_priv = NULL;
+                       field_count++;
                }
                else
                {
@@ -881,10 +870,7 @@
                                
(*last_cmd)->cmd.scan->fields[field_count].num_bits = scan_size;
                                
(*last_cmd)->cmd.scan->fields[field_count].out_value = buf_cpy(out_value, 
cmd_queue_alloc(CEIL(scan_size, 8)), scan_size);
                                
(*last_cmd)->cmd.scan->fields[field_count].in_value = NULL;
-                               
(*last_cmd)->cmd.scan->fields[field_count].in_check_value = NULL;
-                               
(*last_cmd)->cmd.scan->fields[field_count].in_check_mask = NULL;
-                               
(*last_cmd)->cmd.scan->fields[field_count].in_handler = NULL;
-                               
(*last_cmd)->cmd.scan->fields[field_count++].in_handler_priv = NULL;
+                               field_count++;
                        }
                } else
                {
@@ -900,10 +886,7 @@
                        (*last_cmd)->cmd.scan->fields[field_count].num_bits = 1;
                        (*last_cmd)->cmd.scan->fields[field_count].out_value = 
NULL;
                        (*last_cmd)->cmd.scan->fields[field_count].in_value = 
NULL;
-                       
(*last_cmd)->cmd.scan->fields[field_count].in_check_value = NULL;
-                       
(*last_cmd)->cmd.scan->fields[field_count].in_check_mask = NULL;
-                       (*last_cmd)->cmd.scan->fields[field_count].in_handler = 
NULL;
-                       
(*last_cmd)->cmd.scan->fields[field_count++].in_handler_priv = NULL;
+                       field_count++;
                }
        }
 }
@@ -945,10 +928,6 @@
                (*last_cmd)->cmd.scan->fields[i].num_bits = num_bits;
                (*last_cmd)->cmd.scan->fields[i].out_value = 
buf_cpy(fields[i].out_value, cmd_queue_alloc(num_bytes), num_bits);
                (*last_cmd)->cmd.scan->fields[i].in_value = fields[i].in_value;
-               (*last_cmd)->cmd.scan->fields[i].in_check_value = 
fields[i].in_check_value;
-               (*last_cmd)->cmd.scan->fields[i].in_check_mask = 
fields[i].in_check_mask;
-               (*last_cmd)->cmd.scan->fields[i].in_handler = 
fields[i].in_handler;
-               (*last_cmd)->cmd.scan->fields[i].in_handler_priv = 
fields[i].in_handler_priv;
        }
 
        return ERROR_OK;
@@ -1333,7 +1312,7 @@
                /* if neither in_value nor in_handler
                 * are specified we don't have to examine this field
                 */
-               if (cmd->fields[i].in_value || cmd->fields[i].in_handler)
+               if (cmd->fields[i].in_value)
                {
                        int num_bits = cmd->fields[i].num_bits;
                        u8 *captured = buf_set_buf(buffer, bit_count, 
malloc(CEIL(num_bits, 8)), 0, num_bits);
@@ -1347,28 +1326,6 @@
                        if (cmd->fields[i].in_value)
                        {
                                buf_cpy(captured, cmd->fields[i].in_value, 
num_bits);
-
-                               if (cmd->fields[i].in_handler)
-                               {
-                                       if 
(cmd->fields[i].in_handler(cmd->fields[i].in_value, 
cmd->fields[i].in_handler_priv, cmd->fields+i) != ERROR_OK)
-                                       {
-                                               LOG_WARNING("in_handler: with 
\"in_value\", mismatch in %s", cmd->ir_scan ? "SIR" : "SDR" );
-                                               retval = 
ERROR_JTAG_QUEUE_FAILED;
-                                       }
-                               }
-                       }
-
-                       /* no in_value specified, but a handler takes care of 
the scanned data */
-                       if (cmd->fields[i].in_handler && 
(!cmd->fields[i].in_value))
-                       {
-                               if (cmd->fields[i].in_handler(captured, 
cmd->fields[i].in_handler_priv, cmd->fields+i) != ERROR_OK)
-                               {
-                                       /* We're going to call the 
error:handler later, but if the in_handler
-                                        * reported an error we report this 
failure upstream
-                                        */
-                                       LOG_WARNING("in_handler: w/o 
\"in_value\", mismatch in %s",  cmd->ir_scan ? "SIR" : "SDR" );
-                                       retval = ERROR_JTAG_QUEUE_FAILED;
-                               }
                        }
 
                        free(captured);
@@ -1432,26 +1389,6 @@
        return retval;
 }
 
-int jtag_check_value(u8 *captured, void *priv, scan_field_t *field)
-{
-       return jtag_check_value_inner(captured, field, field->in_check_value, 
field->in_check_mask);
-}
-
-/*
-  set up checking of this field using the in_handler. The values passed in 
must be valid until
-  after jtag_execute() has completed.
- */
-void jtag_set_check_value(scan_field_t *field, u8 *value, u8 *mask, struct 
invalidstruct *obsolete)
-{
-       if (value)
-               field->in_handler = jtag_check_value;
-       else
-               field->in_handler = NULL;       /* No check, e.g. embeddedice 
uses value==NULL to indicate no check */
-       field->in_handler_priv = NULL;
-       field->in_check_value = value;
-       field->in_check_mask = mask;
-}
-
 void jtag_check_value_mask(scan_field_t *field, u8 *value, u8 *mask)
 {
        assert(field->in_value != NULL);
@@ -1466,7 +1403,6 @@
 
        int retval=jtag_check_value_inner(field->in_value, field, value, mask);
        jtag_set_error(retval);
-
 }
 
 
@@ -1478,7 +1414,7 @@
 
        for (i = 0; i < cmd->num_fields; i++)
        {
-               if (cmd->fields[i].in_value || cmd->fields[i].in_handler)
+               if (cmd->fields[i].in_value)
                        type |= SCAN_IN;
                if (cmd->fields[i].out_value)
                        type |= SCAN_OUT;
@@ -1566,7 +1502,7 @@
        field.in_value = idcode_buffer;
 
 
-       field.in_handler = NULL;
+
 
        for (i = 0; i < JTAG_MAX_CHAIN_SIZE; i++)
        {
@@ -1740,7 +1676,7 @@
        field.num_bits = total_ir_length;
        field.out_value = ir_test;
        field.in_value = ir_test;
-       field.in_handler = NULL;
+
 
        jtag_add_plain_ir_scan(1, &field, TAP_RESET);
        jtag_execute_queue();
@@ -2858,9 +2794,6 @@
                fields[i].out_value = malloc(CEIL(field_size, 8));
                buf_set_u32(fields[i].out_value, 0, field_size, 
strtoul(args[i*2+1], NULL, 0));
                fields[i].in_value = NULL;
-               fields[i].in_check_mask = NULL;
-               fields[i].in_handler = NULL;
-               fields[i].in_handler_priv = NULL;
        }
 
        jtag_add_ir_scan(argc / 2, fields, TAP_INVALID);
@@ -2973,10 +2906,7 @@
                fields[field_count].out_value = malloc(CEIL(bits, 8));
                str_to_buf(str, len, fields[field_count].out_value, bits, 0);
                fields[field_count].in_value = fields[field_count].out_value;
-               fields[field_count].in_check_mask = NULL;
-               fields[field_count].in_check_value = NULL;
-               fields[field_count].in_handler = NULL;
-               fields[field_count++].in_handler_priv = NULL;
+               field_count++;
        }
 
        jtag_add_dr_scan(num_fields, fields, TAP_INVALID);
Index: src/target/arm_jtag.c
===================================================================
--- src/target/arm_jtag.c       (revision 1670)
+++ src/target/arm_jtag.c       (working copy)
@@ -53,7 +53,7 @@
                field.out_value = t;
                buf_set_u32(field.out_value, 0, field.num_bits, new_instr);
                field.in_value = NULL;
-               field.in_handler = NULL;
+               
 
 
                if (no_verify_capture==NULL)
Index: src/target/arm920t.c
===================================================================
--- src/target/arm920t.c        (revision 1670)
+++ src/target/arm920t.c        (working copy)
@@ -114,25 +114,25 @@
        fields[0].num_bits = 1;
        fields[0].out_value = &access_type_buf;
        fields[0].in_value = NULL;
-       fields[0].in_handler = NULL;
+       
 
        fields[1].tap = jtag_info->tap;
        fields[1].num_bits = 32;
        fields[1].out_value = NULL;
        fields[1].in_value = NULL;
-       fields[1].in_handler = NULL;
+       
 
        fields[2].tap = jtag_info->tap;
        fields[2].num_bits = 6;
        fields[2].out_value = &reg_addr_buf;
        fields[2].in_value = NULL;
-       fields[2].in_handler = NULL;
+       
 
        fields[3].tap = jtag_info->tap;
        fields[3].num_bits = 1;
        fields[3].out_value = &nr_w_buf;
        fields[3].in_value = NULL;
-       fields[3].in_handler = NULL;
+       
 
        jtag_add_dr_scan(4, fields, TAP_INVALID);
 
@@ -175,7 +175,7 @@
        fields[0].in_value = NULL;
 
 
-       fields[0].in_handler = NULL;
+       
 
 
        fields[1].tap = jtag_info->tap;
@@ -185,7 +185,7 @@
        fields[1].in_value = NULL;
 
 
-       fields[1].in_handler = NULL;
+       
 
 
        fields[2].tap = jtag_info->tap;
@@ -195,7 +195,7 @@
        fields[2].in_value = NULL;
 
 
-       fields[2].in_handler = NULL;
+       
 
 
        fields[3].tap = jtag_info->tap;
@@ -205,7 +205,7 @@
        fields[3].in_value = NULL;
 
 
-       fields[3].in_handler = NULL;
+       
 
 
        jtag_add_dr_scan(4, fields, TAP_INVALID);
@@ -242,7 +242,7 @@
        fields[0].in_value = NULL;
 
 
-       fields[0].in_handler = NULL;
+       
 
 
        fields[1].tap = jtag_info->tap;
@@ -252,7 +252,7 @@
        fields[1].in_value = NULL;
 
 
-       fields[1].in_handler = NULL;
+       
 
 
        fields[2].tap = jtag_info->tap;
@@ -262,7 +262,7 @@
        fields[2].in_value = NULL;
 
 
-       fields[2].in_handler = NULL;
+       
 
 
        fields[3].tap = jtag_info->tap;
@@ -272,7 +272,7 @@
        fields[3].in_value = NULL;
 
 
-       fields[3].in_handler = NULL;
+       
 
 
        jtag_add_dr_scan(4, fields, TAP_INVALID);
Index: src/target/arm7tdmi.c
===================================================================
--- src/target/arm7tdmi.c       (revision 1670)
+++ src/target/arm7tdmi.c       (working copy)
@@ -115,13 +115,13 @@
                fields[0].num_bits = 1;
                fields[0].out_value = NULL;
                fields[0].in_value = &breakpoint;
-               fields[0].in_handler = NULL;
+               
 
                fields[1].tap = arm7_9->jtag_info.tap;
                fields[1].num_bits = 32;
                fields[1].out_value = NULL;
                fields[1].in_value = databus;
-               fields[1].in_handler = NULL;
+               
 
                if((retval = arm_jtag_scann(&arm7_9->jtag_info, 0x1)) != 
ERROR_OK)
                {
@@ -194,7 +194,7 @@
        fields[0].num_bits = 1;
        fields[0].out_value = NULL;
        fields[0].in_value = NULL;
-       fields[0].in_handler = NULL;
+       
 
 
        fields[1].tap = jtag_info->tap;
@@ -202,7 +202,7 @@
        fields[1].out_value = NULL;
        u8 tmp[4];
        fields[1].in_value = tmp;
-       fields[1].in_handler = NULL;
+       
 
        jtag_add_dr_scan_now(2, fields, TAP_INVALID);
 
@@ -286,14 +286,14 @@
        fields[0].num_bits = 1;
        fields[0].out_value = NULL;
        fields[0].in_value = NULL;
-       fields[0].in_handler = NULL;
+       
 
        fields[1].tap = jtag_info->tap;
        fields[1].num_bits = 32;
        fields[1].out_value = NULL;
        u8 tmp[4];
        fields[1].in_value = tmp;
-       fields[1].in_handler = NULL;
+       
 
        jtag_add_dr_scan_now(2, fields, TAP_INVALID);
 
_______________________________________________
Openocd-development mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to