Lines Matching defs:dma
23 #include <linux/dma-mapping.h>
45 dma_addr_t dma;
67 dma_addr_t dma;
121 static struct dma_page *pool_find_page(struct dma_pool *pool, dma_addr_t dma)
126 if (dma < page->dma)
128 if ((dma - page->dma) < pool->allocation)
134 static bool pool_block_err(struct dma_pool *pool, void *vaddr, dma_addr_t dma)
139 page = pool_find_page(pool, dma);
141 dev_err(pool->dev, "%s %s, %p/%pad (bad dma)\n",
142 __func__, pool->name, vaddr, &dma);
151 dev_err(pool->dev, "%s %s, dma %pad already free\n",
152 __func__, pool->name, &dma);
170 static bool pool_block_err(struct dma_pool *pool, void *vaddr, dma_addr_t dma)
194 dma_addr_t dma)
196 block->dma = dma;
223 * Return: a dma allocation pool with the requested characteristics, or
317 block->dma = page->dma + offset;
346 &page->dma, mem_flags);
356 * dma_pool_destroy - destroys a pool of dma memory blocks.
357 * @pool: dma pool that will be destroyed
388 page->vaddr, page->dma);
399 * @pool: dma pool that will produce the block
401 * @handle: pointer to dma address of block
404 * and reports its dma address through the handle.
435 *handle = block->dma;
445 * dma_pool_free - put block back into dma pool
446 * @pool: the dma pool holding the block
448 * @dma: dma address of block
453 void dma_pool_free(struct dma_pool *pool, void *vaddr, dma_addr_t dma)
459 if (!pool_block_err(pool, vaddr, dma)) {
460 pool_block_push(pool, block, dma);
493 * Return: a managed dma allocation pool with the requested
517 * @pool: dma pool that will be destroyed