summaryrefslogtreecommitdiff
path: root/libdde-linux26/libdde_linux26/contrib/include/linux/dmapool.h
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2013-07-27 22:11:24 +0000
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2013-07-27 22:11:24 +0000
commitce6a36c7f7c88e7ca0fda816f9282237bb86829d (patch)
tree611bf9beb2281d34260ca87fc189a0ddc864819a /libdde-linux26/libdde_linux26/contrib/include/linux/dmapool.h
parentbb9d6cd642f9189b8102d566c8c46a6de1d2c5f7 (diff)
parent4fbe7358c7747a9165f776eb19addbb9baf7def2 (diff)
Merge branch 'upstream-merged'
Diffstat (limited to 'libdde-linux26/libdde_linux26/contrib/include/linux/dmapool.h')
-rw-r--r--libdde-linux26/libdde_linux26/contrib/include/linux/dmapool.h35
1 files changed, 35 insertions, 0 deletions
diff --git a/libdde-linux26/libdde_linux26/contrib/include/linux/dmapool.h b/libdde-linux26/libdde_linux26/contrib/include/linux/dmapool.h
new file mode 100644
index 00000000..022e34fc
--- /dev/null
+++ b/libdde-linux26/libdde_linux26/contrib/include/linux/dmapool.h
@@ -0,0 +1,35 @@
+/*
+ * include/linux/dmapool.h
+ *
+ * Allocation pools for DMAable (coherent) memory.
+ *
+ * This file is licensed under the terms of the GNU General Public
+ * License version 2. This program is licensed "as is" without any
+ * warranty of any kind, whether express or implied.
+ */
+
+#ifndef LINUX_DMAPOOL_H
+#define LINUX_DMAPOOL_H
+
+#include <asm/io.h>
+#include <asm/scatterlist.h>
+
+struct dma_pool *dma_pool_create(const char *name, struct device *dev,
+ size_t size, size_t align, size_t allocation);
+
+void dma_pool_destroy(struct dma_pool *pool);
+
+void *dma_pool_alloc(struct dma_pool *pool, gfp_t mem_flags,
+ dma_addr_t *handle);
+
+void dma_pool_free(struct dma_pool *pool, void *vaddr, dma_addr_t addr);
+
+/*
+ * Managed DMA pool
+ */
+struct dma_pool *dmam_pool_create(const char *name, struct device *dev,
+ size_t size, size_t align, size_t allocation);
+void dmam_pool_destroy(struct dma_pool *pool);
+
+#endif
+