This patch series fixes problems with urb unlinking (patch 1, 2). The bug can be seen as "set altsetting to 0 failed, -110" during testusb runs, and stops all low- and full-speed devices dead in their tracks until reboot. Patch 3-5 change the way Errata 2 is worked around. This allows the use of higher performance ATL interrupts while avoiding some rare lockups where USB packets never finish. Patch 6 is some minor cleanup and fixes a bug where the urb might not get correctly unliked from its endpoint if the system is out of memory during enqueue. Known bugs: "WARNING: at drivers/usb/host/isp1760-hcd.c:1136" may be triggered now and then. This bug is not introduced by these patches, but seems to trigger a bit more often with them (maybe due to the lower latency ATL interrupts). This bug seems to be benign (no known side effects) but the reason for the warning code path should of course be looked into. Overall, I feel that the driver is more stable with these fixes than without them, despite the WARNING. Tested by simultaneously running 'testusb -a' and copying files back and forth between memory sticks connected via external hub (and syncing), by running testusb and echoing characters between ports of USB connected serial converters, and by copying large files (> 200 MB) between memory sticks. Arvid Brodin (6): usb/isp1760: Added missing call to usb_hcd_check_unlink_urb() during unlink usb/isp1760: Clear TT buffer on interrupted low & full speed transfers usb/isp1760: Move some code (prepare for next patch) usb/isp1760: Move isp1760_run within file (prepare for next patch) usb/isp1760: Use polling instead of SOF interrupts to fix Errata 2 usb/isp1760: Fix missing endpoint unlink when no mem during enqueue drivers/usb/host/isp1760-hcd.c | 377 +++++++++++++++++++++++++--------------- drivers/usb/host/isp1760-hcd.h | 3 +- 2 files changed, 243 insertions(+), 137 deletions(-) -- Arvid Brodin Enea Services Stockholm AB -- 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