USB: Fix up URB error codes to reflect implementation.
authorSarah Sharp <sarah.a.sharp@linux.intel.com>
Thu, 16 Jun 2011 20:06:04 +0000 (13:06 -0700)
committerSarah Sharp <sarah.a.sharp@linux.intel.com>
Fri, 17 Jun 2011 18:28:21 +0000 (11:28 -0700)
commita9e758634f464ffb09344821a9f0b5a5c6df2b3e
tree5fe6502609769a90e77a7b9b91e2e2e691235572
parentb3df3f9c7df9a8d85e03e158d35487618a160901
USB: Fix up URB error codes to reflect implementation.

Documentation/usb/error-codes.txt mentions that urb->status can be set to
-EXDEV, if the isochronous transfer was not fully completed.  However, in
practice, EHCI, UHCI, and OHCI all only set -EXDEV in the individual frame
status, never in the URB status.  Those host controller actually always
pass in a zero status to usb_hcd_giveback_urb, and rely on the core to set
the appropriate status value.

The xHCI driver ran into issues with the uvcvideo driver when it tried to
set -EXDEV in urb->status, because the driver refused to submit URBs, and
the userspace camera application's video froze.

Clean up the documentation to reflect the actual implementation.

Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
Acked-by: Alan Stern <stern@rowland.harvard.edu>
Documentation/usb/error-codes.txt