usbd_status
—
USB device drivers interface return status values
This documents the full list of return values used by the generic USB code.
Interface-specific definitions will be given with interface.
Return values are split into two main groups: expected values and error values.
There are only two expected values:
USBD_NORMAL_COMPLETION
- The operation completed successfully.
USBD_IN_PROGRESS
- The operation was successfully submitted, usually part of an asynchronous
operation.
These are the error values:
USBD_PENDING_REQUESTS
- The requested operation could not be completed due to pending requests,
usually from a pipe close operation.
USBD_NOT_STARTED
- The initial status of a USB transfer. See
usbdi(9) for more details
about USB transfers.
USBD_INVAL
- Invalid arguments were supplied for the requested operation.
USBD_NOMEM
- No memory could be allocated.
USBD_CANCELLED
- The USB transfer has been cancelled, and not completed.
USBD_BAD_ADDRESS
- The requested USB pipe could not be found. See
usbdi(9) for more details
about USB pipes.
USBD_IN_USE
- The requested operation could not be performed due to the device having
active connections, such as USB audio device currently playing.
USBD_NO_ADDR
- USB bus has reached its maximum limit of devices.
USBD_SET_ADDR_FAILED
- Call to
usbd_set_address
() failed during new USB
device discovery.
USBD_NO_POWER
- New device has requested more power than is available.
USBD_TOO_DEEP
- New USB Hub too deep from the root.
USBD_IOERROR
- Non-specific error happened during IO.
USBD_NOT_CONFIGURED
- USB device is not configured; it has no configuration descriptor.
USBD_TIMEOUT
- Operation timed out.
USBD_SHORT_XFER
- USB transfer succeeded but not all requested data was returned.
USBD_STALLED
- USB controller has stalled (controller specific.)
USBD_INTERRUPTED
- Process was interrupted by external means (such as a signal) while waiting
for a transfer to complete.
This usbd_status
interface first appeared in
NetBSD 1.4.