diff --git a/src/jtag/jtag.c b/src/jtag/jtag.c index d55888ca8dc2f7561b7028bc264d7b52baad80d5..cc7082de917b3826dda356f07a84a7da75385d73 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 4a1be9fc20d5cb6f5616ee047f06ea23a2334739..668486332f134e011e04089a63244ba81e36a8c7 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 */