|
@@ -604,6 +604,7 @@ static void r4k_dma_cache_wback_inv(unsigned long addr, unsigned long size)
|
|
|
r4k_blast_scache();
|
|
|
else
|
|
|
blast_scache_range(addr, addr + size);
|
|
|
+ __sync();
|
|
|
return;
|
|
|
}
|
|
|
|
|
@@ -620,6 +621,7 @@ static void r4k_dma_cache_wback_inv(unsigned long addr, unsigned long size)
|
|
|
}
|
|
|
|
|
|
bc_wback_inv(addr, size);
|
|
|
+ __sync();
|
|
|
}
|
|
|
|
|
|
static void r4k_dma_cache_inv(unsigned long addr, unsigned long size)
|
|
@@ -647,6 +649,7 @@ static void r4k_dma_cache_inv(unsigned long addr, unsigned long size)
|
|
|
(addr + size - 1) & almask);
|
|
|
blast_inv_scache_range(addr, addr + size);
|
|
|
}
|
|
|
+ __sync();
|
|
|
return;
|
|
|
}
|
|
|
|
|
@@ -663,6 +666,7 @@ static void r4k_dma_cache_inv(unsigned long addr, unsigned long size)
|
|
|
}
|
|
|
|
|
|
bc_inv(addr, size);
|
|
|
+ __sync();
|
|
|
}
|
|
|
#endif /* CONFIG_DMA_NONCOHERENT */
|
|
|
|