Author: hselasky
Date: Tue Nov 15 20:48:57 2011
New Revision: 227541
URL: http://svn.freebsd.org/changeset/base/227541

Log:
  Some brands of XHCI controllers needs more time to reset.
  
  Reported by:  Jan Henrik Sylvester
  MFC after:    1 week

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

Modified: head/sys/dev/usb/controller/xhci.c
==============================================================================
--- head/sys/dev/usb/controller/xhci.c  Tue Nov 15 20:41:50 2011        
(r227540)
+++ head/sys/dev/usb/controller/xhci.c  Tue Nov 15 20:48:57 2011        
(r227541)
@@ -292,7 +292,7 @@ xhci_start_controller(struct xhci_softc 
        XWRITE4(sc, oper, XHCI_USBCMD, XHCI_CMD_HCRST);
 
        for (i = 0; i != 100; i++) {
-               usb_pause_mtx(NULL, hz / 1000);
+               usb_pause_mtx(NULL, hz / 100);
                temp = XREAD4(sc, oper, XHCI_USBCMD) &
                    (XHCI_CMD_HCRST | XHCI_STS_CNR);
                if (!temp)
@@ -453,7 +453,7 @@ xhci_start_controller(struct xhci_softc 
            XHCI_CMD_INTE | XHCI_CMD_HSEE);
 
        for (i = 0; i != 100; i++) {
-               usb_pause_mtx(NULL, hz / 1000);
+               usb_pause_mtx(NULL, hz / 100);
                temp = XREAD4(sc, oper, XHCI_USBSTS) & XHCI_STS_HCH;
                if (!temp)
                        break;
@@ -487,7 +487,7 @@ xhci_halt_controller(struct xhci_softc *
        XWRITE4(sc, oper, XHCI_USBCMD, 0);
 
        for (i = 0; i != 100; i++) {
-               usb_pause_mtx(NULL, hz / 1000);
+               usb_pause_mtx(NULL, hz / 100);
                temp = XREAD4(sc, oper, XHCI_USBSTS) & XHCI_STS_HCH;
                if (temp)
                        break;
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to