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

Hans Petter Selasky hselasky at FreeBSD.org
Fri Oct 3 15:58:05 UTC 2014


Author: hselasky
Date: Fri Oct  3 15:58:04 2014
New Revision: 272479
URL: https://svnweb.freebsd.org/changeset/base/272479

Log:
  Fix XHCI driver for devices which have more than 15 physical root HUB
  ports. The current bitmap array was too small to hold more than 16
  bits and would at some point toggle the context size, which then would
  trigger an enumeration fault and cause a fallback to the EHCI
  companion controller, if any.
  
  MFC after:	3 days

Modified:
  head/sys/dev/usb/controller/xhci.h

Modified: head/sys/dev/usb/controller/xhci.h
==============================================================================
--- head/sys/dev/usb/controller/xhci.h	Fri Oct  3 15:54:51 2014	(r272478)
+++ head/sys/dev/usb/controller/xhci.h	Fri Oct  3 15:58:04 2014	(r272479)
@@ -493,7 +493,8 @@ struct xhci_softc {
 	uint8_t			sc_noscratch;
 	/* root HUB device configuration */
 	uint8_t			sc_conf;
-	uint8_t			sc_hub_idata[2];
+	/* root HUB port event bitmap, max 256 ports */
+	uint8_t			sc_hub_idata[32];
 
 	/* size of context */
 	uint8_t			sc_ctx_is_64_byte;


More information about the svn-src-all mailing list