diff options
author | oharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60> | 2009-05-08 08:46:28 +0000 |
---|---|---|
committer | oharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60> | 2009-05-08 08:46:28 +0000 |
commit | 4f19ef3cce5fe96114a6e444598d5b6571694e76 (patch) | |
tree | 2eddd24804adcaa6a24d2bfa78892ef8d4b6d380 /src/target | |
parent | bf4da345ecb678a8f608a3380bf367d1e15b92c2 (diff) | |
download | openocd_libswd-4f19ef3cce5fe96114a6e444598d5b6571694e76.tar.gz openocd_libswd-4f19ef3cce5fe96114a6e444598d5b6571694e76.tar.bz2 openocd_libswd-4f19ef3cce5fe96114a6e444598d5b6571694e76.tar.xz openocd_libswd-4f19ef3cce5fe96114a6e444598d5b6571694e76.zip |
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
Diffstat (limited to 'src/target')
-rw-r--r-- | src/target/arm_jtag.c | 17 | ||||
-rw-r--r-- | src/target/arm_jtag.h | 6 |
2 files changed, 15 insertions, 8 deletions
diff --git a/src/target/arm_jtag.c b/src/target/arm_jtag.c index 951967e8..1732aac7 100644 --- a/src/target/arm_jtag.c +++ b/src/target/arm_jtag.c @@ -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; diff --git a/src/target/arm_jtag.h b/src/target/arm_jtag.h index da004fce..fff3e79e 100644 --- a/src/target/arm_jtag.h +++ b/src/target/arm_jtag.h @@ -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); |