Kernel Functions for Drivers usb_pipe_get_state(9F)
NAME
usb_pipe_get_state - Return USB pipe state
SYNOPSIS
#include
int usb_pipe_get_state(usb_pipe_handle_t pipe_handle,
usb_pipe_state_t *pipe_state, usb_flags_t usb_flags);
INTERFACE LEVEL
Solaris DDI specific (Solaris DDI)PARAMETERS
pipe_handle Handle of the pipe to retrieve the state.
pipe_state Pointer to where pipe state is returned.
usb_flags No flags are recognized. Reserved for future
expansion.DESCRIPTION
The usb_pipe_get_state() function retrieves the state of the
pipe referred to by pipe_handle into the location pointed to
by pipe_state.
Possible pipe states are:USB_PIPE_STATE_CLOSED Pipe is closed.
USB_PIPE_STATE_ACTIVE Pipe is active and can
send/receive data. Polling isactive for isochronous and inter-
rupt pipes.USB_PIPE_STATE_IDLE Polling is stopped for isochronous
and interrupt-IN pipes.
USB_PIPE_STATE_ERROR An error occurred. Client must
call usb_pipe_reset(). Note that
this status is not seen by a client driver ifUSB_ATTRS_AUTOCLEARING is set in
the request attributes.SunOS 5.11 Last change: 5 Jan 2004 1
Kernel Functions for Drivers usb_pipe_get_state(9F)
USB_PIPE_STATE_CLOSING Pipe is being closed. Requests are
being drained from the pipe and other cleanup is in progress.RETURN VALUES
USB_SUCCESS Pipe state returned in second argument.
USB_INVALID_ARGS Pipe_state argument is NULL.
USB_INVALID_PIPE Pipe_handle argument is NULL.
CONTEXT
May be called from user, kernel or interrupt context.EXAMPLES
usb_pipe_handle_t pipe;
usb_pipe_state_t state;
/* Recover if the pipe is in an error state. */if ((usb_pipe_get_state(pipe, &state, 0) == USB_SUCCESS) &&
(state == USB_PIPE_STATE_ERROR)) {
cmn_err (CE_WARN, "%s%d: USB Pipe error.",
ddi_driver_name(dip), ddi_get_instance(dip));
do_recovery();
}ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:SunOS 5.11 Last change: 5 Jan 2004 2
Kernel Functions for Drivers usb_pipe_get_state(9F)
____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| Architecture | PCI-based systems |
|_____________________________|_____________________________|
| Interface Stability | Committed ||_____________________________|_____________________________|
| Availability | driver/usb ||_____________________________|_____________________________|
SEE ALSO
attributes(5), usb_clr_feature(9F), usb_get_cfg(9F).
usb_get_status(9F), usb_pipe_close(9F),
usb_pipe_ctrl_xfer(9F), usb_pipe_open(9F).
usb_pipe_reset(9F)
SunOS 5.11 Last change: 5 Jan 2004 3