static int jtag_nsrst_delay = 0; /* default to no nSRST delay */
static int jtag_ntrst_delay = 0; /* default to no nTRST delay */
+typedef struct jtag_event_callback_s
+{
+ jtag_event_handler_t callback;
+ void* priv;
+ struct jtag_event_callback_s* next;
+} jtag_event_callback_t;
+
/* callbacks to inform high-level handlers about JTAG state changes */
static jtag_event_callback_t *jtag_event_callbacks;
*/
typedef int (*jtag_event_handler_t)(enum jtag_event event, void* priv);
-typedef struct jtag_event_callback_s
-{
- jtag_event_handler_t callback;
- void* priv;
- struct jtag_event_callback_s* next;
-} jtag_event_callback_t;
+extern int jtag_register_event_callback(jtag_event_handler_t f, void *x);
+extern int jtag_unregister_event_callback(jtag_event_handler_t f);
+
+extern int jtag_call_event_callbacks(enum jtag_event event);
+
/// @returns The current JTAG speed setting.
int jtag_get_speed(void);
extern void jtag_check_value_mask(scan_field_t *field, u8 *value, u8 *mask);
extern void jtag_sleep(u32 us);
-extern int jtag_call_event_callbacks(enum jtag_event event);
-extern int jtag_register_event_callback(jtag_event_handler_t f, void *x);
-extern int jtag_unregister_event_callback(jtag_event_handler_t f);
/*
* The JTAG subsystem defines a number of error codes,