nios2: fix map_physmem to do real cache mapping
[oweals/u-boot.git] / arch / nios2 / include / asm / dma-mapping.h
1 #ifndef __ASM_NIOS2_DMA_MAPPING_H
2 #define __ASM_NIOS2_DMA_MAPPING_H
3
4 #include <memalign.h>
5 #include <asm/io.h>
6
7 /*
8  * dma_alloc_coherent() return cache-line aligned allocation which is mapped
9  * to uncached io region.
10  */
11 static inline void *dma_alloc_coherent(size_t len, unsigned long *handle)
12 {
13         unsigned long addr = (unsigned long)malloc_cache_aligned(len);
14
15         if (!addr)
16                 return NULL;
17
18         invalidate_dcache_range(addr, addr + len);
19         if (handle)
20                 *handle = addr;
21
22         return ioremap(addr, len);
23 }
24 #endif /* __ASM_NIOS2_DMA_MAPPING_H */