forked from Imagelibrary/rtems
bsp/qoriq: Fix tlbwe synchronization
This commit is contained in:
@@ -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
|
||||
|
||||
|
||||
@@ -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");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user