Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 14 Oct 2010 21:26:06 +0000 (UTC)
From:      Hans Petter Selasky <hselasky@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r213864 - head/sys/dev/usb/controller
Message-ID:  <201010142126.o9ELQ6NO038068@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
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));



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201010142126.o9ELQ6NO038068>