Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

usb_alloc_urb(9) [centos man page]

USB_ALLOC_URB(9)						   USB Core APIs						  USB_ALLOC_URB(9)

NAME
usb_alloc_urb - creates a new urb for a USB driver to use SYNOPSIS
struct urb * usb_alloc_urb(int iso_packets, gfp_t mem_flags); ARGUMENTS
iso_packets number of iso packets for this urb mem_flags the type of memory to allocate, see kmalloc for a list of valid options for this. DESCRIPTION
Creates an urb for the USB driver to use, initializes a few internal structures, incrementes the usage counter, and returns a pointer to it. If the driver want to use this urb for interrupt, control, or bulk endpoints, pass '0' as the number of iso packets. The driver must call usb_free_urb when it is finished with the urb. RETURN
A pointer to the new urb, or NULL if no memory is available. COPYRIGHT
Kernel Hackers Manual 3.10 June 2014 USB_ALLOC_URB(9)

Check Out this Related 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)
Man Page