summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sys/powerpc/aim/mmu_oea.c3
-rw-r--r--sys/powerpc/powerpc/mmu_oea.c3
-rw-r--r--sys/powerpc/powerpc/pmap.c3
3 files changed, 6 insertions, 3 deletions
diff --git a/sys/powerpc/aim/mmu_oea.c b/sys/powerpc/aim/mmu_oea.c
index e3515d5..7f4455e 100644
--- a/sys/powerpc/aim/mmu_oea.c
+++ b/sys/powerpc/aim/mmu_oea.c
@@ -569,7 +569,8 @@ pmap_bootstrap(vm_offset_t kernelstart, vm_offset_t kernelend)
*/
batu = BATU(0x00000000, BAT_BL_256M, BAT_Vs);
batl = BATL(0x00000000, BAT_M, BAT_PP_RW);
- __asm ("mtibatu 0,%0; mtibatl 0,%1; isync; \n"
+ __asm ("sync; isync; \n"
+ "mtibatu 0,%0; mtibatl 0,%1; isync; \n"
"mtdbatu 0,%0; mtdbatl 0,%1; isync"
:: "r"(batu), "r"(batl));
diff --git a/sys/powerpc/powerpc/mmu_oea.c b/sys/powerpc/powerpc/mmu_oea.c
index e3515d5..7f4455e 100644
--- a/sys/powerpc/powerpc/mmu_oea.c
+++ b/sys/powerpc/powerpc/mmu_oea.c
@@ -569,7 +569,8 @@ pmap_bootstrap(vm_offset_t kernelstart, vm_offset_t kernelend)
*/
batu = BATU(0x00000000, BAT_BL_256M, BAT_Vs);
batl = BATL(0x00000000, BAT_M, BAT_PP_RW);
- __asm ("mtibatu 0,%0; mtibatl 0,%1; isync; \n"
+ __asm ("sync; isync; \n"
+ "mtibatu 0,%0; mtibatl 0,%1; isync; \n"
"mtdbatu 0,%0; mtdbatl 0,%1; isync"
:: "r"(batu), "r"(batl));
diff --git a/sys/powerpc/powerpc/pmap.c b/sys/powerpc/powerpc/pmap.c
index e3515d5..7f4455e 100644
--- a/sys/powerpc/powerpc/pmap.c
+++ b/sys/powerpc/powerpc/pmap.c
@@ -569,7 +569,8 @@ pmap_bootstrap(vm_offset_t kernelstart, vm_offset_t kernelend)
*/
batu = BATU(0x00000000, BAT_BL_256M, BAT_Vs);
batl = BATL(0x00000000, BAT_M, BAT_PP_RW);
- __asm ("mtibatu 0,%0; mtibatl 0,%1; isync; \n"
+ __asm ("sync; isync; \n"
+ "mtibatu 0,%0; mtibatl 0,%1; isync; \n"
"mtdbatu 0,%0; mtdbatl 0,%1; isync"
:: "r"(batu), "r"(batl));
OpenPOWER on IntegriCloud