summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoriedowse <iedowse@FreeBSD.org>2004-08-15 10:51:21 +0000
committeriedowse <iedowse@FreeBSD.org>2004-08-15 10:51:21 +0000
commit2457adaca5389376180a98d2520a201e578f1d6c (patch)
tree0262ee7364750d166087b8ff363eac7bb17d2f63
parent4c8376863965f4ffe4c6ba2172be1b880cd66fd2 (diff)
downloadFreeBSD-src-2457adaca5389376180a98d2520a201e578f1d6c.zip
FreeBSD-src-2457adaca5389376180a98d2520a201e578f1d6c.tar.gz
Use the USBD_FORCE_SHORT_XFER flag when setting up transmit transfers.
Without this, the device cannot detect the end of ethernet packets whose size is a multiple of the USB packat size. PR: kern/70474 Submitted by: Andrew Thompson <andy@fud.org.nz> MFC after: 1 week
-rw-r--r--sys/dev/usb/if_axe.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/dev/usb/if_axe.c b/sys/dev/usb/if_axe.c
index 0b1839e..5dad4d6 100644
--- a/sys/dev/usb/if_axe.c
+++ b/sys/dev/usb/if_axe.c
@@ -810,7 +810,8 @@ axe_encap(struct axe_softc *sc, struct mbuf *m, int idx)
c->axe_mbuf = m;
usbd_setup_xfer(c->axe_xfer, sc->axe_ep[AXE_ENDPT_TX],
- c, c->axe_buf, m->m_pkthdr.len, 0, 10000, axe_txeof);
+ c, c->axe_buf, m->m_pkthdr.len, USBD_FORCE_SHORT_XFER,
+ 10000, axe_txeof);
/* Transmit */
err = usbd_transfer(c->axe_xfer);
OpenPOWER on IntegriCloud