Visit Our UNIX and Linux User Community

Linux and UNIX Man Pages

Test Your Knowledge in Computers #992
Difficulty: Medium
OpenSolaris and its derivatives are the only SVR4 descendants that are not open-source software.
True or False?
Linux & Unix Commands - Search Man Pages

usb_fill_int_urb(9) [centos man page]

USB_FILL_INT_URB(9)					  Host-Side Data Types and Macro				       USB_FILL_INT_URB(9)

NAME
usb_fill_int_urb - macro to help initialize a interrupt urb SYNOPSIS
void usb_fill_int_urb(struct urb * urb, struct usb_device * dev, unsigned int pipe, void * transfer_buffer, int buffer_length, usb_complete_t complete_fn, void * context, int interval); ARGUMENTS
urb pointer to the urb to initialize. dev pointer to the struct usb_device for this urb. pipe the endpoint pipe transfer_buffer pointer to the transfer buffer buffer_length length of the transfer buffer complete_fn pointer to the usb_complete_t function context what to set the urb context to. interval what to set the urb interval to, encoded like the endpoint descriptor's bInterval value. DESCRIPTION
Initializes a interrupt urb with the proper information needed to submit it to a device. Note that High Speed and SuperSpeed interrupt endpoints use a logarithmic encoding of the endpoint interval, and express polling intervals in microframes (eight per millisecond) rather than in frames (one per millisecond). Wireless USB also uses the logarithmic encoding, but specifies it in units of 128us instead of 125us. For Wireless USB devices, the interval is passed through to the host controller, rather than being translated into microframe units. COPYRIGHT
Kernel Hackers Manual 3.10 June 2014 USB_FILL_INT_URB(9)

Check Out this Related Man Page

USB_POISON_URB(9)						   USB Core APIs						 USB_POISON_URB(9)

NAME
usb_poison_urb - reliably kill a transfer and prevent further use of an URB SYNOPSIS
void usb_poison_urb(struct urb * urb); ARGUMENTS
urb pointer to URB describing a previously submitted request, may be NULL DESCRIPTION
This routine cancels an in-progress request. It is guaranteed that upon return all completion handlers will have finished and the URB will be totally idle and cannot be reused. These features make this an ideal way to stop I/O in a disconnect callback. If the request has not already finished or been unlinked the completion handler will see urb->status == -ENOENT. After and while the routine runs, attempts to resubmit the URB will fail with error -EPERM. Thus even if the URB's completion handler always tries to resubmit, it will not succeed and the URB will become idle. The URB must not be deallocated while this routine is running. In particular, when a driver calls this routine, it must insure that the completion handler cannot deallocate the URB. This routine may not be used in an interrupt context (such as a bottom half or a completion handler), or when holding a spinlock, or in other situations where the caller can't schedule. This routine should not be called by a driver after its disconnect method has returned. COPYRIGHT
Kernel Hackers Manual 3.10 June 2014 USB_POISON_URB(9)

Featured Tech Videos