svcadm(8)을 검색하려면 섹션에서 8 을 선택하고, 맨 페이지 이름에 svcadm을 입력하고 검색을 누른다.
usb_clr_feature(9f)
usb_clr_feature(9F) Kernel Functions usb_clr_feature(9F)
NAME
usb_clr_feature - Clear feature of USB device, interface or endpoint
SYNOPSIS
#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);
INTERFACE LEVEL
Solaris DDI specific (Solaris DDI)
PARAMETERS
dip Pointer to the device's dev_info structure.
pipe_handle Pipe handle to device, device interface or endpoint.
request_type bmRequestType to be used. One of the following:
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 Feature to be cleared. Can be any device-defined
device-, interface-, or endpoint-specific feature,
including the following which are defined in the USB
2.0 specification:
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 Device, interface or endpoint on which to clear the
feature. One of:
Interface number, for interfaces.
Endpoint number, for endpoints.
0 for devices.
flags USB_FLAGS_SLEEP is the only flag recognized. Wait for
completion and do not call callback.
callback Callback handler to notify of asynchronous completion.
callback_arg Second argument passed to callback handler.
DESCRIPTION
The usb_clr_feature() function clears a specific feature of a device,
interface or endpoint. This function always blocks and waits for
resources if not available, regardless of the flags argument.
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.
RETURN VALUES
USB_SUCCESS Feature was successfully cleared.
USB_INVALID_ARGS dip argument is NULL.
USB_INVALID_PIPE pipe_handle argument is NULL
USB_INVALID_CONTEXT Called from interrupt context with
USB_FLAGS_SLEEP flag set.
USB_FAILURE Clearing of feature was unsuccessful.
CONTEXT
May always be called from user or kernel context. May be called from
interrupt context only if USB_FLAGS_SLEEP is not set in flags.
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 con‐
text. Otherwise the callback cannot block. Please see usb_call‐
back_flags(9S) for more information on callbacks.
EXAMPLES
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);
}
ATTRIBUTES
See attributes(7) for descriptions of the following attributes:
tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) ATTRIBUTE TYPEAT‐
TRIBUTE VALUE _ ArchitecturePCI-based systems _ Interface Stability‐
Committed _ Availabilitysystem/io/usb
SEE ALSO
attributes(7), usb_get_status(9F), usb_pipe_get_state(9F),
usb_pipe_reset(9F), usb_callback_flags(9S)
Oracle Solaris 11.4 Feb 9 2004 usb_clr_feature(9F)