1. NAME

dma_pool_create - Creates a pool of consistent memory blocks, for dma.

2. SYNOPSIS

struct dma_pool * dma_pool_create(const char *  name , struct device *  dev , size_t  size , size_t  align , size_t  boundary );

3. ARGUMENTS

name
    name of pool, for diagnostics

dev
    device that will be doing the DMA

size
    size of the blocks in this pool.

align
    alignment requirement for blocks; must be a power of two

boundary
    returned blocks wonAqt cross this power of two boundary

4. CONTEXT

!in_interrupt

5. DESCRIPTION

Returns a dma allocation pool with the requested characteristics, or null if one canAqt be created. Given one of these pools, dma_pool_alloc may be used to allocate memory. Such memory will all have « consistent » DMA mappings, accessible by the device and its driver without using cache flushing primitives. The actual size of blocks allocated may be larger than requested because of alignment.

If boundary is nonzero, objects returned from dma_pool_alloc wonAqt cross that size boundary. This is useful for devices which have addressing restrictions on individual DMA transfers, such as not crossing boundaries of 4KBytes.

6. COPYRIGHT