bsp/qoriq: Fix tlbwe synchronization

This commit is contained in:
Sebastian Huber
2016-07-28 10:35:24 +02:00
parent b1ef3674c0
commit 6446773000
2 changed files with 5 additions and 3 deletions

View File

@@ -48,8 +48,9 @@ qoriq_tlb1_write:
li r0, 0
mtspr FSL_EIS_MAS8, r0
#endif
isync
msync
tlbwe
sync
isync
blr
@@ -65,8 +66,9 @@ qoriq_tlb1_invalidate:
#ifdef QORIQ_HAS_HYPERVISOR_MODE
mtspr FSL_EIS_MAS8, r0
#endif
isync
msync
tlbwe
sync
isync
blr

View File

@@ -317,7 +317,7 @@ void qoriq_mmu_change_perm(uint32_t test, uint32_t set, uint32_t clear)
mas3 &= ~(clear & mask);
mas3 |= set & mask;
PPC_SET_SPECIAL_PURPOSE_REGISTER(FSL_EIS_MAS3, mas3);
asm volatile ("tlbwe; msync; isync" : : : "memory");
asm volatile ("isync; msync; tlbwe; isync" : : : "memory");
}
}
}