A lazy version of dma_mmap_coherent() implementation for IA64. Signed-off-by: Takashi Iwai <tiwai@xxxxxxx> --- arch/ia64/include/asm/dma-mapping.h | 16 ++++++++++++++++ 1 files changed, 16 insertions(+), 0 deletions(-) diff --git a/arch/ia64/include/asm/dma-mapping.h b/arch/ia64/include/asm/dma-mapping.h index 5a61b5c..70b2c61 100644 --- a/arch/ia64/include/asm/dma-mapping.h +++ b/arch/ia64/include/asm/dma-mapping.h @@ -84,4 +84,20 @@ dma_cache_sync (struct device *dev, void *vaddr, size_t size, #define dma_is_consistent(d, h) (1) /* all we do is coherent memory... */ +#define ARCH_HAS_DMA_MMAP_COHERENT +static inline int dma_mmap_coherent(struct device *dev, + struct vm_area_struct *vma, + void *cpu_addr, dma_addr_t handle, + size_t size) +{ + struct dma_map_ops *ops = get_dma_ops(dev); + unsigned long pfn; + + if (ops->mmap_coherent) + return ops->mmap_coherent(dev, vma, cpu_addr, handle, size); + pfn = page_to_pfn(virt_to_page(cpu_addr)); + return remap_pfn_range(vma, vma->vm_start, pfn + vma->vm_pgoff, + size, vma->vm_page_prot); +} + #endif /* _ASM_IA64_DMA_MAPPING_H */ -- 1.6.3.2 -- To unsubscribe from this list: send the line "unsubscribe linux-arch" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html