On Wed, 9 Feb 2011, Sarah Sharp wrote: > On Tue, Feb 08, 2011 at 07:14:31PM -0800, Luben Tuikov wrote: > > The hw setup: NEC based controller, device directly attached to the embedded hub. > > Is this an embedded USB 3.0 hub? Because we don't currently support > USB 3.0 hubs. > > > The device is reset via libusb_reset_device(). > > The xHCI driver has to go through a special process to let the hardware > know the device has been reset. I've modified the usbcore reset methods > to use that, but if usbfs is falling on a slightly different code path > than the usb core code, then it's probably missing that call into the > xHCI driver. Please file a bug on bugzilla, as I'm completely swamped > right now, and I don't want to lose this bug report. > > Anyone seen this (observed only in SS, HS is fine)? Is there a fix for > > this in the trunk since f878133b? > > I have never tried to reset a USB device under xHCI via usbfs, so that's > probably why it never showed up. Thanks for catching this. usbfs doesn't do anything special. It simply calls usb_reset_device(). Probably the reason you never saw this error scenario before is that you never tried updating the firmware in a device. In particular, when the descriptors get changed the entire device structure is destroyed, then the device has to be reset a second time and re-enumerated. Apparently this fools xhci-hcd into thinking the device was never assigned an address when in fact it was. Maybe the second reset got skipped. 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