diff --git a/src/jtag/jtag.c b/src/jtag/jtag.c index d55888ca8..cc7082de9 100644 --- a/src/jtag/jtag.c +++ b/src/jtag/jtag.c @@ -1570,7 +1570,7 @@ int interface_jtag_execute_queue(void) return ERROR_FAIL; } - retval = jtag->execute_queue(); + retval = default_interface_jtag_execute_queue(); if (retval == ERROR_OK) { @@ -1592,6 +1592,11 @@ int interface_jtag_execute_queue(void) } #endif +int default_interface_jtag_execute_queue(void) +{ + return jtag->execute_queue(); +} + void jtag_execute_queue_noclear(void) { /* each flush can take as much as 1-2ms on high bandwidth low latency interfaces. diff --git a/src/jtag/jtag.h b/src/jtag/jtag.h index 4a1be9fc2..668486332 100644 --- a/src/jtag/jtag.h +++ b/src/jtag/jtag.h @@ -869,6 +869,13 @@ extern int interface_jtag_add_sleep(u32 us); extern int interface_jtag_add_clocks(int num_cycles); extern int interface_jtag_execute_queue(void); +/** + * Calls the interface callback to execute the queue. This routine + * is used by the JTAG driver layer and should not be called directly. + */ +extern int default_interface_jtag_execute_queue(void); + + #endif // INCLUDE_JTAG_MINIDRIVER_H /* this allows JTAG devices to implement the entire jtag_xxx() layer in hw/sw */