USB_CLR_FEATURE(9F) | Kernel Functions for Drivers | USB_CLR_FEATURE(9F) |
#include <sys/usb/usba.h> int usb_clr_feature(dev_info_t *dip, uint_t request_type, uint_t feature, uint_t which, usb_flags_t flags, void (*callback) (usb_pipe_handle_t pipe_handle, usb_opaque_t callback_arg, int rval, usb_cb_flags_t flags), usb_opaque_t callback_arg);
pipe_handle
request_type
USB_DEV_REQ_RCPT_DEV - Clear feature on device.
USB_DEV_REQ_RCPT_IF - Clear feature on interface.
USB_DEV_REQ_RCPT_EP - Clear feature on endpoint.
feature
USB_EP_HALT - Clear a HALT on an endpoint.
USB_DEV_REMOTE_WAKEUP - Clear REMOTE_WAKEUP on a device.
USB_DEV_TEST_MODE - Clear TEST_MODE on a device.
which
flags
callback
callback_arg
This call blocks for completion if USB_FLAGS_SLEEP is set in flags. It returns immediately and calls the callback upon completion if USB_FLAGS_SLEEP is not set.
USB_INVALID_ARGS
USB_INVALID_PIPE
USB_INVALID_CONTEXT
USB_FAILURE
If the USB_CB_ASYNC_REQ_FAILED bit is clear in usb_cb_flags_t, the callback, if supplied, can block because it is executing in kernel context. Otherwise the callback cannot block. Please see usb_callback_flags(9S) for more information on callbacks.
if (usb_clr_feature(dip, pipe_handle, USB_DEV_REQ_RCPT_EP, USB_EP_HALT, data_endpoint_num, 0) == USB_FAILURE) { cmn_err (CE_WARN, "%s%d: Error clearing halt condition on data endpoint %d.", ddi_driver_name(dip), ddi_get_instance(dip), data_endpoint_num); }
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
Architecture | PCI-based systems |
Interface stability | Committed |
February 9, 2004 | OmniOS |