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; /* used to validate scan results */
- u8* in_check_mask; /* check specified bits against check_value */
- in_handler_t in_handler; /* process received buffer using this handler */
+ 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! DO NOT USE! process received buffer using this handler */
void* in_handler_priv; /* additional information for the in_handler */
} scan_field_t;
* of the same interface over time. Even if the OpenOCD code
* is unchanged, the actual path taken may vary over time
* and versions of interface firmware or PCB revisions.
- *
+ *
* Use jtag_add_pathmove() when specific transition sequences
* are required.
- *
+ *
* Do not use jtag_add_pathmove() unless you need to, but do use it
* if you have to.
*
#include <stdlib.h>
-int mips_ejtag_set_instr(mips_ejtag_t *ejtag_info, int new_instr, in_handler_t handler)
+int mips_ejtag_set_instr(mips_ejtag_t *ejtag_info, int new_instr, void *delete_me_and_submit_patch)
{
jtag_tap_t *tap;
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_check_value = NULL;
field.in_check_mask = NULL;
- field.in_handler = handler;
+ field.in_handler = NULL;
field.in_handler_priv = NULL;
jtag_add_ir_scan(1, &field, TAP_INVALID);
}
field.tap = ejtag_info->tap;
field.num_bits = 32;
field.out_value = NULL;
-
+
field.in_value = (void*)idcode;
field.in_check_value = NULL;
field.in_check_mask = NULL;
field.tap = ejtag_info->tap;
field.num_bits = 32;
field.out_value = NULL;
-
+
field.in_value = (void*)impcode;
field.in_check_value = NULL;
field.in_check_mask = NULL;
field.num_bits = 32;
field.out_value = t;
buf_set_u32(field.out_value, 0, field.num_bits, *data);
-
+
field.in_value = (u8*)data;
field.in_check_value = NULL;
field.in_check_mask = NULL;
u32 ejtag_ctrl;
} mips_ejtag_t;
-extern int mips_ejtag_set_instr(mips_ejtag_t *ejtag_info, int new_instr, in_handler_t handler);
+extern int mips_ejtag_set_instr(mips_ejtag_t *ejtag_info, int new_instr, void *delete_me_and_submit_patch);
extern int mips_ejtag_enter_debug(mips_ejtag_t *ejtag_info);
extern int mips_ejtag_exit_debug(mips_ejtag_t *ejtag_info, int enable_interrupts);
extern int mips_ejtag_get_impcode(mips_ejtag_t *ejtag_info, u32 *impcode, in_handler_t handler);