Dear Sarah,
We noticed a couple of problems with the Linux xHCI driver:

1. There is a problem with URB cancellation for USB 2.0 device on USB
3.0 host.  When we disable our device, we cancel all pending URBs by
calling ioctl with the request code of USBDEVFS_DISCARDURB.  When we
re-enable our device, we submit new URBs, but when we try to reap
them, the program hangs (not every time, but pretty often).  The same
code works if the device is plugged into the EHCI port, and we also
don't see any hanging with xHCI host if we don't do URB cancellation,
but have our device terminate URBs by sending zero-length packets
instead.

2. Clear Halt of EP does not reset the Sequence number if the device
is a USB 3.0 device, while it seems that clear halt properly resets
the toggle bits if the device is 2.0 even on an xHCI host.

Thank you
Yuliya
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to