diff options
author | iedowse <iedowse@FreeBSD.org> | 2004-08-15 10:51:21 +0000 |
---|---|---|
committer | iedowse <iedowse@FreeBSD.org> | 2004-08-15 10:51:21 +0000 |
commit | 2457adaca5389376180a98d2520a201e578f1d6c (patch) | |
tree | 0262ee7364750d166087b8ff363eac7bb17d2f63 | |
parent | 4c8376863965f4ffe4c6ba2172be1b880cd66fd2 (diff) | |
download | FreeBSD-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.c | 3 |
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); |