pull up verify_capture_ir one level in api stack

git-svn-id: svn://svn.berlios.de/openocd/trunk@1669 b42882b7-edfa-0310-969c-e2dbd0fdcd60
This commit is contained in:
oharboe
2009-05-08 08:46:28 +00:00
parent bf4da345ec
commit 4f19ef3cce
4 changed files with 70 additions and 25 deletions

View File

@@ -36,7 +36,7 @@
#define _ARM_JTAG_SCAN_N_CHECK_
#endif
int arm_jtag_set_instr(arm_jtag_t *jtag_info, u32 new_instr, in_handler_t handler)
int arm_jtag_set_instr(arm_jtag_t *jtag_info, u32 new_instr, void *no_verify_capture)
{
jtag_tap_t *tap;
tap = jtag_info->tap;
@@ -52,13 +52,20 @@ int arm_jtag_set_instr(arm_jtag_t *jtag_info, u32 new_instr, in_handler_t handl
field.num_bits = tap->ir_length;
field.out_value = t;
buf_set_u32(field.out_value, 0, field.num_bits, new_instr);
field.in_value = NULL;
field.in_handler = NULL;
field.in_handler = handler; /* deprecated! move into calling code */
jtag_add_ir_scan(1, &field, TAP_INVALID);
if (no_verify_capture==NULL)
{
jtag_add_ir_scan(1, &field, TAP_INVALID);
} else
{
/* FIX!!!! this is a kludge!!! arm926ejs.c should reimplement this arm_jtag_set_instr to
* have special verification code.
*/
jtag_add_ir_scan_noverify(1, &field, TAP_INVALID);
}
}
return ERROR_OK;

View File

@@ -29,15 +29,15 @@
typedef struct arm_jtag_s
{
jtag_tap_t *tap;
u32 scann_size;
u32 scann_instr;
u32 cur_scan_chain;
u32 intest_instr;
} arm_jtag_t;
extern int arm_jtag_set_instr(arm_jtag_t *jtag_info, u32 new_instr, in_handler_t handler);
extern int arm_jtag_set_instr(arm_jtag_t *jtag_info, u32 new_instr, void *verify_capture);
extern int arm_jtag_scann(arm_jtag_t *jtag_info, u32 new_scan_chain);
extern int arm_jtag_setup_connection(arm_jtag_t *jtag_info);