linux/include/linux/dmapool.h
<<
>>
Prefs
   1/*
   2 * include/linux/dmapool.h
   3 *
   4 * Allocation pools for DMAable (coherent) memory.
   5 *
   6 * This file is licensed under  the terms of the GNU General Public 
   7 * License version 2. This program is licensed "as is" without any 
   8 * warranty of any kind, whether express or implied.
   9 */
  10
  11#ifndef LINUX_DMAPOOL_H
  12#define LINUX_DMAPOOL_H
  13
  14#include <asm/io.h>
  15#include <asm/scatterlist.h>
  16
  17struct dma_pool *dma_pool_create(const char *name, struct device *dev, 
  18                        size_t size, size_t align, size_t allocation);
  19
  20void dma_pool_destroy(struct dma_pool *pool);
  21
  22void *dma_pool_alloc(struct dma_pool *pool, gfp_t mem_flags,
  23                     dma_addr_t *handle);
  24
  25void dma_pool_free(struct dma_pool *pool, void *vaddr, dma_addr_t addr);
  26
  27/*
  28 * Managed DMA pool
  29 */
  30struct dma_pool *dmam_pool_create(const char *name, struct device *dev,
  31                                  size_t size, size_t align, size_t allocation);
  32void dmam_pool_destroy(struct dma_pool *pool);
  33
  34#endif
  35
  36