u-boot-brain/arch/nios2/include/asm/dma-mapping.h
Thomas Chou 7cacb64a35 nios2: convert dma_alloc_coherent to use malloc_cache_aligned
Convert dma_alloc_coherent to use memalign.

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Reviewed-by: Marek Vasut <marex@denx.de>
2015-10-23 07:59:03 +08:00

25 lines
536 B
C

#ifndef __ASM_NIOS2_DMA_MAPPING_H
#define __ASM_NIOS2_DMA_MAPPING_H
#include <memalign.h>
#include <asm/io.h>
/*
* dma_alloc_coherent() return cache-line aligned allocation which is mapped
* to uncached io region.
*/
static inline void *dma_alloc_coherent(size_t len, unsigned long *handle)
{
unsigned long addr = (unsigned long)malloc_cache_aligned(len);
if (!addr)
return NULL;
invalidate_dcache_range(addr, addr + len);
if (handle)
*handle = addr;
return ioremap(addr, len);
}
#endif /* __ASM_NIOS2_DMA_MAPPING_H */