1DMA_POOL_CREATE(9)        Memory Management in Linux        DMA_POOL_CREATE(9)
2
3
4

NAME

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

SYNOPSIS

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

ARGUMENTS

14       name
15           name of pool, for diagnostics
16
17       dev
18           device that will be doing the DMA
19
20       size
21           size of the blocks in this pool.
22
23       align
24           alignment requirement for blocks; must be a power of two
25
26       boundary
27           returned blocks won't cross this power of two boundary
28

CONTEXT

30       !in_interrupt
31

DESCRIPTION

33       Returns a dma allocation pool with the requested characteristics, or
34       null if one can't be created. Given one of these pools, dma_pool_alloc
35       may be used to allocate memory. Such memory will all have “consistent”
36       DMA mappings, accessible by the device and its driver without using
37       cache flushing primitives. The actual size of blocks allocated may be
38       larger than requested because of alignment.
39
40       If boundary is nonzero, objects returned from dma_pool_alloc won't
41       cross that size boundary. This is useful for devices which have
42       addressing restrictions on individual DMA transfers, such as not
43       crossing boundaries of 4KBytes.
44
46Kernel Hackers Manual 3.10         June 2019                DMA_POOL_CREATE(9)
Impressum