usb_sg_init - initializes scatterlist-based bulk/interrupt I/O request
2. SYNOPSIS ▲
int usb_sg_init(struct usb_sg_request * io , struct usb_device * dev , unsigned pipe , unsigned period , struct scatterlist * sg , int nents , size_t length , gfp_t mem_flags );
3. ARGUMENTS ▲
request block being initialized. until usb_sg_wait returns, treat this as a pointer to an opaque block of memory,
the usb device that will send or receive the data
endpoint « pipe » used to transfer the data
polling rate for interrupt endpoints, in frames or (for high speed endpoints) microframes; ignored for bulk
how many entries in the scatterlist
how many bytes to send from the scatterlist, or zero to send every byte identified in the list.
SLAB_* flags affecting memory allocations in this call
4. DESCRIPTION ▲
Returns zero for success, else a negative errno value. This initializes a scatter/gather request, allocating resources such as I/O mappings and urb memory (except maybe memory used by USB controller drivers).
The request must be issued using usb_sg_wait, which waits for the I/O to complete (or to be canceled) and then cleans up all resources allocated by usb_sg_init.
The request may be canceled with usb_sg_cancel, either before or after usb_sg_wait is called.
5. COPYRIGHT ▲