On Sat, 5 Apr 2014, David Kochendorfer wrote: > Hi, > > I'm having a problem with my Android phone USB 3.0 port: when I attach a > 3.0 storage gadget/accessory (Extreme USB 3.0 - 64GB, formated as ext4), > I do see an entry in /dev/block/platform/xhci-hcd, but when a I mount > the device and copy a relatively large file (~2GB) to it, I see real > times of 55-63 seconds. And when I look at the associated dmesgs, it > appears that xhci-hcd is running USB2. > > The phone SOC - is an MSM-8974 with a 3.0 hub, and my kernel is > 3.4.78-g8126c7a. > > I'm relatively knowledgeable about linux drivers, in general, and with > the USB 3.0 spec, but not the USB driver and am having trouble tracking > down what's going on. > > Can someone please point me to a document, that details the functional > flow of the usb driver from cable/device change through enumeration an > xhci-hcd initialization, if such a thing exists? It doesn't. :-( > Also, is there a way to force the hub to USB3? Isn't the embedded hub already on the USB-3 bus? If it isn't using that bus, there's no way to force it. > I'm not looking for a > "generic - approved" linux driver solution (i.e. I'm not trying to > generate a patch to submit, I just want to get the transfers sped up in > my kernel for this particular case). The choice of which bus to use, USB-2 or USB-3, is made by the device when it connects. The kernel can't tell a device to use the USB-3 bus. Maybe if you post your dmesg log, some of the xHCI maintainers will have useful suggestions. I can tell you right away what the first suggestion will be, though: Use a more up-to-date kernel. 3.4 is pretty old, considering the rapid rate of development of xhci-hcd. Alan Stern -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html