DMA_POOL_ALLOC(9) Memory Management in Linux DMA_POOL_ALLOC(9)NAME
dma_pool_alloc - get a block of consistent memory
SYNOPSIS
void * dma_pool_alloc(struct dma_pool * pool, gfp_t mem_flags, dma_addr_t * handle);
ARGUMENTS
pool
dma pool that will produce the block
mem_flags
GFP_* bitmask
handle
pointer to dma address of block
DESCRIPTION
This returns the kernel virtual address of a currently unused block, and reports its dma address through the handle. If such a memory block
can't be allocated, NULL is returned.
COPYRIGHT Kernel Hackers Manual 3.10 June 2014 DMA_POOL_ALLOC(9)
Check Out this Related Man Page
USB_SG_INIT(9) USB Core APIs USB_SG_INIT(9)NAME
usb_sg_init - initializes scatterlist-based bulk/interrupt I/O request
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);
ARGUMENTS
io
request block being initialized. until usb_sg_wait returns, treat this as a pointer to an opaque block of memory,
dev
the usb device that will send or receive the data
pipe
endpoint "pipe" used to transfer the data
period
polling rate for interrupt endpoints, in frames or (for high speed endpoints) microframes; ignored for bulk
sg
scatterlist entries
nents
how many entries in the scatterlist
length
how many bytes to send from the scatterlist, or zero to send every byte identified in the list.
mem_flags
SLAB_* flags affecting memory allocations in this call
DESCRIPTION
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.
RETURN
Zero for success, else a negative errno value.
COPYRIGHT Kernel Hackers Manual 3.10 June 2014 USB_SG_INIT(9)