summaryrefslogtreecommitdiffstats
path: root/arch/arm
diff options
context:
space:
mode:
authorLucas Stach <l.stach@pengutronix.de>2014-07-06 23:43:28 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2014-07-22 22:20:53 +0200
commit24196832062b684ffeaa74731a58f62e4e5d70fd (patch)
treef717248cad493c8ffbe890c0233460852a3d8249 /arch/arm
parent2671c30c2520e65779da55b62d32fe4f8cdd12fc (diff)
downloadbarebox-24196832062b684ffeaa74731a58f62e4e5d70fd.tar.gz
barebox-24196832062b684ffeaa74731a58f62e4e5d70fd.tar.xz
mmu: flush ttb in map_io_sections
We need to flush out the ttb in order to make the changes observable to the page walker. Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm')
-rw-r--r--arch/arm/cpu/mmu.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/arm/cpu/mmu.c b/arch/arm/cpu/mmu.c
index bf0141b946..e4afcc8411 100644
--- a/arch/arm/cpu/mmu.c
+++ b/arch/arm/cpu/mmu.c
@@ -188,6 +188,7 @@ void *map_io_sections(unsigned long phys, void *_start, size_t size)
for (sec = start; sec < start + size; sec += (1 << 20))
ttb[sec >> 20] = (phys++ << 20) | PMD_SECT_DEF_UNCACHED;
+ dma_flush_range((unsigned long)ttb, (unsigned long)ttb + 0x4000);
tlb_invalidate();
return _start;
}