|
@@ -16,14 +16,6 @@
|
|
|
#include <asm/addrspace.h>
|
|
|
#include <asm/io.h>
|
|
|
|
|
|
-struct dma_coherent_mem {
|
|
|
- void *virt_base;
|
|
|
- u32 device_base;
|
|
|
- int size;
|
|
|
- int flags;
|
|
|
- unsigned long *bitmap;
|
|
|
-};
|
|
|
-
|
|
|
void *dma_alloc_coherent(struct device *dev, size_t size,
|
|
|
dma_addr_t *dma_handle, gfp_t gfp)
|
|
|
{
|
|
@@ -58,12 +50,10 @@ EXPORT_SYMBOL(dma_alloc_coherent);
|
|
|
void dma_free_coherent(struct device *dev, size_t size,
|
|
|
void *vaddr, dma_addr_t dma_handle)
|
|
|
{
|
|
|
- struct dma_coherent_mem *mem = dev ? dev->dma_mem : NULL;
|
|
|
int order = get_order(size);
|
|
|
|
|
|
if (!dma_release_from_coherent(dev, order, vaddr)) {
|
|
|
WARN_ON(irqs_disabled()); /* for portability */
|
|
|
- BUG_ON(mem && mem->flags & DMA_MEMORY_EXCLUSIVE);
|
|
|
free_pages((unsigned long)phys_to_virt(dma_handle), order);
|
|
|
iounmap(vaddr);
|
|
|
}
|