-ENODEV specified USB-device or bus doesn't exist
--ENOENT specified interface or endpoint does not exist or
- is not enabled
-
-ENXIO host controller driver does not support queuing of this type
of urb. (treat as a host controller bug.)
prescribed bus turn-around time
c) unknown USB error
--EILSEQ (*, **) a) CRC mismatch
- b) no response packet received within the
- prescribed bus turn-around time
- c) unknown USB error
-
- Note that often the controller hardware does not
- distinguish among cases a), b), and c), so a
- driver cannot tell whether there was a protocol
- error, a failure to respond (often caused by
- device disconnect), or some other fault.
-
--ETIMEDOUT (**) No response packet received within the prescribed
- bus turn-around time. This error may instead be
- reported as -EPROTO or -EILSEQ.
-
- Note that the synchronous USB message functions
- also use this code to indicate timeout expired
- before the transfer completed.
+-EILSEQ (*, **) CRC mismatch
-EPIPE (**) Endpoint stalled. For non-control endpoints,
reset this status with usb_clear_halt().
specified buffer, and URB_SHORT_NOT_OK was set in
urb->transfer_flags.
+-ETIMEDOUT (**) transfer timed out, NAK
+
-ENODEV Device was removed. Often preceded by a burst of
other errors, since the hub driver does't detect
device removal events immediately.
usb_get_*/usb_set_*():
usb_control_msg():
usb_bulk_msg():
--ETIMEDOUT Timeout expired before the transfer completed.
- In the future this code may change to -ETIME,
- whose definition is a closer match to this sort
- of error.
+ All USB errors (submit/status) can occur