Skip to content

Commit cf115c1

Browse files
committed
drivers/cmsis_dap_usb_bulk: allow waiting for bulk write
No driver directly working with the USB hardware needs additional time to complete the write op, they always return transfer complete status immediately after submitting the transfer. Although there is implemented correct waiting path in cmsis_dap_usb_write() it was marked by error logs to catch any suspicious behaviour during debugging of asynchronous libusb transfers. However there are drivers which need waiting to finish write op: at least usbipd-win, IP tunnelled USB driver, was reported to flood the log with the related errors. Change LOG_ERROR to LOG_DEBUG_IO in the code waiting to finish write op. Reported-by: Quentis Ghyll <[email protected]> Signed-off-by: Tomas Vanek <[email protected]> Change-Id: Iedf2c96d851f22e694efaf13a2d6a2a408cee1ad Reviewed-on: https://review.openocd.org/c/openocd/+/8640 Tested-by: jenkins
1 parent 23796ef commit cf115c1

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

src/jtag/drivers/cmsis_dap_usb_bulk.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -532,7 +532,7 @@ static int cmsis_dap_usb_write(struct cmsis_dap *dap, int txlen, int timeout_ms)
532532
tr = &dap->bdata->command_transfers[dap->pending_fifo_put_idx];
533533

534534
if (tr->status == CMSIS_DAP_TRANSFER_PENDING) {
535-
LOG_ERROR("busy command USB transfer at %u", dap->pending_fifo_put_idx);
535+
LOG_DEBUG_IO("busy command USB transfer at %u", dap->pending_fifo_put_idx);
536536
struct timeval tv = {
537537
.tv_sec = timeout_ms / 1000,
538538
.tv_usec = timeout_ms % 1000 * 1000
@@ -547,7 +547,7 @@ static int cmsis_dap_usb_write(struct cmsis_dap *dap, int txlen, int timeout_ms)
547547
tr->status = CMSIS_DAP_TRANSFER_IDLE;
548548
}
549549
if (tr->status == CMSIS_DAP_TRANSFER_COMPLETED) {
550-
LOG_ERROR("USB write: late transfer competed");
550+
LOG_DEBUG_IO("USB write: late transfer competed");
551551
tr->status = CMSIS_DAP_TRANSFER_IDLE;
552552
}
553553
if (tr->status != CMSIS_DAP_TRANSFER_IDLE) {

0 commit comments

Comments
 (0)