aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--hw/usb-xhci.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/hw/usb-xhci.c b/hw/usb-xhci.c
index 5e618f0db..7682126e9 100644
--- a/hw/usb-xhci.c
+++ b/hw/usb-xhci.c
@@ -1721,10 +1721,14 @@ static void xhci_kick_ep(XHCIState *xhci, unsigned int slotid, unsigned int epid
}
}
+ if (epctx->state == EP_HALTED) {
+ DPRINTF("xhci: ep halted, stopping schedule\n");
+ break;
+ }
+
/*
* Qemu usb can't handle multiple in-flight xfers.
- * Also xfers might be finished here already,
- * possibly with an error. Stop here for now.
+ * Stop here for now.
*/
break;
}