Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

usb_completion_reason(9s) [sunos man page]

usb_completion_reason(9S)				    Data Structures for Drivers 				 usb_completion_reason(9S)

NAME
usb_completion_reason - USB completion reason definitions SYNOPSIS
#include <sys/usb/usba.h> INTERFACE LEVEL
Solaris DDI specific (Solaris DDI) DESCRIPTION
If an error occurs during execution of a USB request, the USBA framework calls a client driver's exception callback handler to relay what happened. The host controller reports transport errors to the exception callback handler through the handler's request argument's comple- tion reason (usb_cr_t) field. A completion reason of USB_CR_OK means the transfer completed with no errors detected. The usb_cr_t enumerated type contains the following definitions: USB_CR_OK The transfer completed without any errors being detected. USB_CR_CRC CRC error was detected. USB_CR_BITSTUFFING Bit stuffing violation was detected. USB_CR_DATA_TOGGLE_MM Data toggle packet identifier did not match expected value. USB_CR_STALL The device endpoint indicated that it is stalled. If autoclearing is enabled for the request (request attributes has USB_ATTRS_AUTO- CLEARING set), check the callback flags (usb_cb_flags_t) in the callback handler to determine whether the stall is a functional stall (USB_CB_FUNCTIONAL_STALL) or a protocol stall (USB_CB_PROTOCOL_STALL). Please see usb_request_attributes(9S) for more information on autoclearing. USB_CR_DEV_NOT_RESP Host controller timed out while waiting for device to respond. USB_CR_PID_CHECKFAILURE Check bits on the packet identifier returned from the device were not as expected. USB_CR_UNEXP_PID Packet identifier received was not valid. USB_CR_DATA_OVERRUN Amount of data returned exceeded either the maximum packet size of the endpoint or the remaining buffer size. USB_CR_DATA_UNDERRUN Amount of data returned was not sufficient to fill the specified buffer and the USB_ATTRS_SHORT_XFER_OK attribute was not set. Please see usb_request_attributes(9S) for more information on allowance of short transfers. USB_CR_BUFFER_OVERRUN A device sent data faster than the system could digest it. USB_CR_BUFFER_UNDERRUN The host controller could not get data from the system fast enough to keep up with the required USB data rate. USB_CR_TIMEOUT A timeout specified in a control, bulk, or one-time interrupt request has expired. USB_CR_NOT_ACCESSED Request was not accessed nor processed by the host controller. USB_CR_NO_RESOURCES No resources were available to continue servicing a periodic interrupt or isochronous request. USB_CR_STOPPED_POLLING Servicing of the current periodic request cannot continue because polling on an interrupt-IN or isochronous-IN endpoint has stopped. USB_CR_PIPE_CLOSING Request was not started because the pipe to which it was queued was closing or closed. USB_CR_PIPE_RESET Request was not started because the pipe to which it was queued was reset. USB_CR_NOT_SUPPORTED Request or command is not supported. USB_CR_FLUSHED Request was not completed because the pipe to which it was queued went to an error state, became stalled, was reset or was closed. USB_CR_HC_HARDWARE_ERR Request could not be completed due to a general host controller hardware error. ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Architecture |PCI-based systems | +-----------------------------+-----------------------------+ |Interface stability |Evolving | +-----------------------------+-----------------------------+ |Availability |SUNWusb, SUNWusbu | +-----------------------------+-----------------------------+ SEE ALSO
usb_alloc_request(9F), usb_pipe_bulk_xfer(9F), usb_pipe_ctrl_xfer(9F), usb_pipe_intr_xfer(9F), usb_pipe_isoc_xfer(9F), usb_bulk_request(9S), usb_ctrl_request(9S), usb_intr_request(9S), usb_isoc_request(9S). SunOS 5.10 5 Jan 2004 usb_completion_reason(9S)
Man Page