* Copyright (C) 2005 by Dominic Rath *
* Dominic.Rath@gmx.de *
* *
-* Copyright (C) 2007,2008 Øyvind Harboe *
+* Copyright (C) 2007-2010 Øyvind Harboe *
* oyvind.harboe@zylin.com *
* *
* This program is free software; you can redistribute it and/or modify *
/// The number of bits this field specifies (up to 32)
int num_bits;
/// A pointer to value to be scanned into the device
- uint8_t* out_value;
+ const uint8_t* out_value;
/// A pointer to a 32-bit memory location for data scanned out
uint8_t* in_value;
/// @returns The current JTAG speed setting.
-int jtag_get_speed(void);
+int jtag_get_speed(int *speed);
/**
* Given a @a speed setting, use the interface @c speed_div callback to
/// Shutdown the debug adapter upon program exit.
int adapter_quit(void);
+/// Set ms to sleep after jtag_execute_queue() flushes queue. Debug
+/// purposes.
+void jtag_set_flush_queue_sleep(int ms);
+
/**
* Initialize JTAG chain using only a RESET reset. If init fails,
* try reset + init.
*/
void jtag_add_reset(int req_tlr_or_trst, int srst);
-
-/**
- * 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);
-
-/**
- * Function jtag_get_end_state
- *
- * Return the value of the global variable for end state
- */
-tap_state_t jtag_get_end_state(void);
-
void jtag_add_sleep(uint32_t us);
int jtag_add_tms_seq(unsigned nbits, const uint8_t *seq, enum tap_state t);
* called with a non-zero error code.
*/
void jtag_set_error(int error);
-/// @returns The current value of jtag_error
-int jtag_get_error(void);
/**
* Resets jtag_error to ERROR_OK, returning its previous value.
* @returns The previous value of @c jtag_error.
* level APIs that are used in inner loops. */
#include <jtag/minidriver.h>
+bool transport_is_jtag(void);
+
+int jim_jtag_newtap(Jim_Interp *interp, int argc, Jim_Obj *const *argv);
+
#endif /* JTAG_H */