/// @returns True if IR scan verification will be performed.
bool jtag_will_verify_capture_ir(void);
-/**
- * Initialize interface upon startup. Return a successful no-op upon
- * subsequent invocations.
- */
-int jtag_interface_init(struct command_context* cmd_ctx);
+/** Initialize debug adapter upon startup. */
+int adapter_init(struct command_context* cmd_ctx);
-/// Shutdown the JTAG interface upon program exit.
-int jtag_interface_quit(void);
+/// Shutdown the debug adapter upon program exit.
+int adapter_quit(void);
/**
* Initialize JTAG chain using only a RESET reset. If init fails,
* subsequent DR SCANs.
*
*/
-void jtag_add_ir_scan(struct jtag_tap* tap, int num_fields,
+void jtag_add_ir_scan(struct jtag_tap* tap,
struct scan_field* fields, tap_state_t endstate);
/**
* The same as jtag_add_ir_scan except no verification is performed out
* the output values.
*/
-void jtag_add_ir_scan_noverify(struct jtag_tap* tap, int num_fields,
+void jtag_add_ir_scan_noverify(struct jtag_tap* tap,
const struct scan_field *fields, tap_state_t state);
/**
- * Duplicate the scan fields passed into the function into an IR SCAN
- * command. This function assumes that the caller handles extra fields
- * for bypassed TAPs.
+ * Scan out the bits in ir scan mode.
+ *
+ * If in_bits == NULL, discard incoming bits.
*/
-void jtag_add_plain_ir_scan(int num_fields,
- const struct scan_field* fields, tap_state_t endstate);
+void jtag_add_plain_ir_scan(int num_bits, const uint8_t *out_bits, uint8_t *in_bits,
+ tap_state_t endstate);
/**
void jtag_add_dr_scan_check(struct jtag_tap* tap, int num_fields,
struct scan_field* fields, tap_state_t endstate);
/**
- * Duplicate the scan fields passed into the function into a DR SCAN
- * command. Unlike jtag_add_dr_scan(), this function assumes that the
- * caller handles extra fields for bypassed TAPs.
+ * Scan out the bits in ir scan mode.
+ *
+ * If in_bits == NULL, discard incoming bits.
*/
-void jtag_add_plain_dr_scan(int num_fields,
- const struct scan_field* fields, tap_state_t endstate);
+void jtag_add_plain_dr_scan(int num_bits,
+ const uint8_t *out_bits, uint8_t *in_bits, tap_state_t endstate);
/**
* Defines the type of data passed to the jtag_callback_t interface.
/**
+ * DEPRECATED! store such global state outside JTAG layer
+ *
* Function jtag_set_end_state
*
* Set a global variable to \a state if \a state != TAP_INVALID.
*
- * Return the value of the global variable.
*/
-tap_state_t jtag_set_end_state(tap_state_t state);
+void jtag_set_end_state(tap_state_t state);
/**
+ * DEPRECATED! store such global state outside JTAG layer
+ *
* Function jtag_get_end_state
*
* Return the value of the global variable for end state