svn commit: r212133 - head/sys/dev/usb/net
Andrew Thompson
thompsa at FreeBSD.org
Thu Sep 2 03:55:09 UTC 2010
Author: thompsa
Date: Thu Sep 2 03:55:08 2010
New Revision: 212133
URL: http://svn.freebsd.org/changeset/base/212133
Log:
Fix setting of the rx_max and tx_max variables. If the expected buffer size is
greater than 65535 bytes then the CDC driver might not work as expected, which
is not likely with the existing USB speeds.
Submitted by: Hans Petter Selasky
Modified:
head/sys/dev/usb/net/if_cdce.c
Modified: head/sys/dev/usb/net/if_cdce.c
==============================================================================
--- head/sys/dev/usb/net/if_cdce.c Thu Sep 2 03:52:04 2010 (r212132)
+++ head/sys/dev/usb/net/if_cdce.c Thu Sep 2 03:55:08 2010 (r212133)
@@ -312,14 +312,14 @@ cdce_ncm_init(struct cdce_softc *sc)
/* Read correct set of parameters according to device mode */
if (usbd_get_mode(sc->sc_ue.ue_udev) == USB_MODE_HOST) {
- sc->sc_ncm.rx_max = UGETW(temp.dwNtbInMaxSize);
- sc->sc_ncm.tx_max = UGETW(temp.dwNtbOutMaxSize);
+ sc->sc_ncm.rx_max = UGETDW(temp.dwNtbInMaxSize);
+ sc->sc_ncm.tx_max = UGETDW(temp.dwNtbOutMaxSize);
sc->sc_ncm.tx_remainder = UGETW(temp.wNdpOutPayloadRemainder);
sc->sc_ncm.tx_modulus = UGETW(temp.wNdpOutDivisor);
sc->sc_ncm.tx_struct_align = UGETW(temp.wNdpOutAlignment);
} else {
- sc->sc_ncm.rx_max = UGETW(temp.dwNtbOutMaxSize);
- sc->sc_ncm.tx_max = UGETW(temp.dwNtbInMaxSize);
+ sc->sc_ncm.rx_max = UGETDW(temp.dwNtbOutMaxSize);
+ sc->sc_ncm.tx_max = UGETDW(temp.dwNtbInMaxSize);
sc->sc_ncm.tx_remainder = UGETW(temp.wNdpInPayloadRemainder);
sc->sc_ncm.tx_modulus = UGETW(temp.wNdpInDivisor);
sc->sc_ncm.tx_struct_align = UGETW(temp.wNdpInAlignment);
More information about the svn-src-all
mailing list