blob: b50572f5e6017104d4a9aa1dc74870400630cbae (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
#include <dma.h>
#include <asm/mmu.h>
#include <asm/cache.h>
void arch_sync_dma_for_device(void *vaddr, size_t size,
enum dma_data_direction dir)
{
unsigned long start = (unsigned long)vaddr;
unsigned long end = start + size;
if (dir == DMA_FROM_DEVICE)
v8_inv_dcache_range(start, end);
else
v8_flush_dcache_range(start, end);
}
|