Kernel Functions for Drivers usb_get_current_frame_number(9F)
NAME
usb_get_current_frame_number - Return current logical usb
frame numberSYNOPSIS
#include
usb_frame_number_t usb_get_current_frame_number(dev_info_t *dip);
INTERFACE LEVEL
Solaris DDI specific (Solaris DDI)PARAMETERS
dip Pointer to the device's dev_info structure.
DESCRIPTION
The usb_get_current_frame_number() function retrieves the
current logical USB frame number. Isochronous requests can be started on a particular numbered frame. An offset number of frames (typically between 4 and 10) can be added to the current logical frame number tospecify the number of an upcoming frame to start an isochro-
nous request. The USB specification requires that the frame frequency (theperiod between start-of-frame packets) is one millisecond.
The Solaris operating environment USB implementation uses a running counter of the number of milliseconds since boot as the current logical frame number.RETURN VALUES
On success, the usb_get_current_frame_number() function
returns the current USB frame number. On failure it returns 0. The function fails if dip is NULL.CONTEXT
May be called from user, kernel or interrupt context.EXAMPLES
usb_pipe_handle_t handle;
usb_frame_number_t offset = 10;
usb_isoc_req_t *isoc_req;
isoc_req = usb_alloc_isoc_req(...);
... ...isoc_req->isoc_frame_no = usb_get_current_frame_number(dip) + offset;
SunOS 5.11 Last change: 25 July 2004 1
Kernel Functions for Drivers usb_get_current_frame_number(9F)
isoc_req->isoc_attributes = USB_ATTRS_ISOC_START_FRAME;
... ...if (usb_pipe_isoc_xfer(handle, isoc_req, 0) != USB_SUCCESS) {
... }ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| Architecture | PCI-based systems |
|_____________________________|_____________________________|
| Interface Stability | Committed ||_____________________________|_____________________________|
| Availability | driver/usb ||_____________________________|_____________________________|
SEE ALSO
attributes(5), usb_alloc_isoc_req(9F),
usb_get_max_pkts_per_isoc_request(9F),
usb_pipe_isoc_xfer(9F),
usb_pipe_get_max_bulk_transfer_size(9F),
usb_isoc_request(9S)
SunOS 5.11 Last change: 25 July 2004 2