svn commit: r187773 - user/thompsa/usb/sys/dev/usb2/wlan
Andrew Thompson
thompsa at FreeBSD.org
Tue Jan 27 07:40:10 PST 2009
Author: thompsa
Date: Tue Jan 27 15:40:09 2009
New Revision: 187773
URL: http://svn.freebsd.org/changeset/base/187773
Log:
Exit early if zyd_cmd is passed a read command, dev/usb/if_zyd.c does this.
Modified:
user/thompsa/usb/sys/dev/usb2/wlan/if_zyd2.c
Modified: user/thompsa/usb/sys/dev/usb2/wlan/if_zyd2.c
==============================================================================
--- user/thompsa/usb/sys/dev/usb2/wlan/if_zyd2.c Tue Jan 27 15:34:30 2009 (r187772)
+++ user/thompsa/usb/sys/dev/usb2/wlan/if_zyd2.c Tue Jan 27 15:40:09 2009 (r187773)
@@ -817,9 +817,6 @@ zyd_intr_write_callback(struct usb2_xfer
switch (USB_GET_STATE(xfer)) {
case USB_ST_TRANSFERRED:
DPRINTF(sc, ZYD_DEBUG_ANY, "length=%d\n", xfer->actlen);
- rqp = xfer->priv_fifo;
- if ((rqp->flags & ZYD_CMD_FLAG_READ) == 0)
- wakeup(rqp->odata); /* wakeup caller */
/* FALLTHROUGH */
case USB_ST_SETUP:
@@ -838,6 +835,7 @@ zyd_intr_write_callback(struct usb2_xfer
xfer->priv_fifo = rqp;
rqp->flags |= ZYD_CMD_FLAG_SENT;
usb2_start_hardware(xfer);
+ break;
}
break;
@@ -894,6 +892,8 @@ zyd_cmd(struct zyd_softc *sc, uint16_t c
STAILQ_INSERT_TAIL(&sc->sc_rqh, &rq, rq);
usb2_transfer_start(sc->sc_xfer[ZYD_INTR_DT_WR]);
+ if (!(flags & ZYD_CMD_FLAG_READ))
+ return (0); /* write: don't wait for reply */
/* wait at most one second for command reply */
error = mtx_sleep(odata, &sc->sc_mtx, 0 , "zydcmd", hz);
if (error)
More information about the svn-src-user
mailing list