summaryrefslogtreecommitdiffstats
path: root/sys/dev/usb/uhci.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev/usb/uhci.c')
-rw-r--r--sys/dev/usb/uhci.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/sys/dev/usb/uhci.c b/sys/dev/usb/uhci.c
index 382c295..c96294a 100644
--- a/sys/dev/usb/uhci.c
+++ b/sys/dev/usb/uhci.c
@@ -1268,10 +1268,12 @@ uhci_softintr(void *v)
LIST_FOREACH(ii, &sc->sc_intrhead, list)
uhci_check_intr(sc, ii);
+#ifdef USB_USE_SOFTINTR
if (sc->sc_softwake) {
sc->sc_softwake = 0;
wakeup(&sc->sc_softwake);
}
+#endif /* USB_USE_SOFTINTR */
sc->sc_bus.intr_context--;
}
@@ -1927,10 +1929,14 @@ uhci_abort_xfer(usbd_xfer_handle xfer, usbd_status status)
*/
usb_delay_ms(upipe->pipe.device->bus, 2); /* Hardware finishes in 1ms */
s = splusb();
+#ifdef USB_USE_SOFTINTR
sc->sc_softwake = 1;
+#endif /* USB_USE_SOFTINTR */
usb_schedsoftintr(&sc->sc_bus);
+#ifdef USB_USE_SOFTINTR
DPRINTFN(1,("uhci_abort_xfer: tsleep\n"));
tsleep(&sc->sc_softwake, PZERO, "uhciab", 0);
+#endif /* USB_USE_SOFTINTR */
splx(s);
/*
OpenPOWER on IntegriCloud