On 07/08/14 12:49, Marius Strobl wrote:
On Mon, Jul 07, 2014 at 05:17:17AM +0000, Hans Petter Selasky wrote:
Author: hselasky
Date: Mon Jul  7 05:17:16 2014
New Revision: 268354
URL: http://svnweb.freebsd.org/changeset/base/268354

Log:
   Improve support for Intel Lynx Point USB 3.0 controllers by masking
   the port routing bits like done in Linux.

   MFC after:   1 week
   Tested by:   Tur-Wei Chan <twc...@singnet.com.sg>

Modified:
   head/sys/dev/usb/controller/xhci_pci.c
   head/sys/dev/usb/controller/xhcireg.h

Modified: head/sys/dev/usb/controller/xhci_pci.c
==============================================================================
--- head/sys/dev/usb/controller/xhci_pci.c      Mon Jul  7 03:10:56 2014        
(r268353)
+++ head/sys/dev/usb/controller/xhci_pci.c      Mon Jul  7 05:17:16 2014        
(r268354)
@@ -157,6 +157,9 @@ xhci_pci_port_route(device_t self, uint3
        temp |= set;
        temp &= ~clear;

+       /* Don't set bits which the hardware doesn't support */
+       temp &= pci_read_config(self, PCI_XHCI_INTEL_USB3PRM, 4);
+
        pci_write_config(self, PCI_XHCI_INTEL_USB3_PSSEN, temp, 4);
        pci_write_config(self, PCI_XHCI_INTEL_XUSB2PR, temp, 4);


Is there a reason you only exclude ports that PCI_XHCI_INTEL_USB3PRM
reports as not switchable to SuperSpeed, but not also ports that the
hardware reports as not routable between the EHCI and xHCI controller
via PCI_XHCI_INTEL_USB2PRM (as Linux does, which might be wront,
though)?


No specific reason. Feel free to experiment.

--HPS

_______________________________________________
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