From: jmatthew Date: Mon, 8 Jun 2015 00:58:23 +0000 (+0000) Subject: refuse to do polled isochronous transfers, as other usb controller drivers do X-Git-Url: http://artulab.com/gitweb/?a=commitdiff_plain;h=9deba327c480025aa580218a955eb0080d80175d;p=openbsd refuse to do polled isochronous transfers, as other usb controller drivers do requested by mpi@ --- diff --git a/sys/dev/usb/dwc2/dwc2.c b/sys/dev/usb/dwc2/dwc2.c index 09c2a2ce252..c5d98b35a51 100644 --- a/sys/dev/usb/dwc2/dwc2.c +++ b/sys/dev/usb/dwc2/dwc2.c @@ -1,4 +1,4 @@ -/* $OpenBSD: dwc2.c,v 1.26 2015/06/08 00:46:33 jmatthew Exp $ */ +/* $OpenBSD: dwc2.c,v 1.27 2015/06/08 00:58:23 jmatthew Exp $ */ /* $NetBSD: dwc2.c,v 1.32 2014/09/02 23:26:20 macallan Exp $ */ /*- @@ -1221,14 +1221,15 @@ dwc2_device_isoc_start(struct usbd_xfer *xfer) struct dwc2_softc *sc = DWC2_DPIPE2SC(dpipe); usbd_status err; + /* Why would you do that anyway? */ + if (sc->sc_bus.use_polling) + return (USBD_INVAL); + mtx_enter(&sc->sc_lock); xfer->status = USBD_IN_PROGRESS; err = dwc2_device_start(xfer); mtx_leave(&sc->sc_lock); - if (sc->sc_bus.use_polling) - dwc2_waitintr(sc, xfer); - return err; }