int node;
struct page *page;
- if (hwdev->dma_mask == NULL)
- return NULL;
-
gfp &= ~(__GFP_DMA | __GFP_HIGHMEM | __GFP_DMA32);
gfp |= __GFP_ZERO;
return NULL;
}
+static void nommu_free_coherent(struct device *dev, size_t size, void *vaddr,
+ dma_addr_t dma_addr)
+{
+ free_pages((unsigned long)vaddr, get_order(size));
+}
+
struct dma_mapping_ops nommu_dma_ops = {
.alloc_coherent = nommu_alloc_coherent,
+ .free_coherent = nommu_free_coherent,
.map_single = nommu_map_single,
.map_sg = nommu_map_sg,
.is_phys = 1,