svn commit: r213864 - head/sys/dev/usb/controller

Hans Petter Selasky hselasky at FreeBSD.org
Thu Oct 14 21:26:07 UTC 2010


Author: hselasky
Date: Thu Oct 14 21:26:06 2010
New Revision: 213864
URL: http://svn.freebsd.org/changeset/base/213864

Log:
  Avoid using endless retransmission at EHCI hardware level, hence this hide
  errors from the applications. Only use endless retransmission while in the
  non-addressed state on a High-Speed device.
  
  Approved by:    thompsa (mentor)

Modified:
  head/sys/dev/usb/controller/ehci.c

Modified: head/sys/dev/usb/controller/ehci.c
==============================================================================
--- head/sys/dev/usb/controller/ehci.c	Thu Oct 14 21:19:08 2010	(r213863)
+++ head/sys/dev/usb/controller/ehci.c	Thu Oct 14 21:26:06 2010	(r213864)
@@ -1860,7 +1860,8 @@ ehci_setup_standard_chain(struct usb_xfe
 		temp.auto_data_toggle = 1;
 	}
 
-	if (usbd_get_speed(xfer->xroot->udev) != USB_SPEED_HIGH) {
+	if (xfer->xroot->udev->parent_hs_hub != NULL ||
+	    xfer->xroot->udev->address != 0) {
 		/* max 3 retries */
 		temp.qtd_status |=
 		    htohc32(temp.sc, EHCI_QTD_SET_CERR(3));


More information about the svn-src-all mailing list