mirror of
https://github.com/AsahiLinux/m1n1
synced 2024-09-21 13:41:54 +00:00
m1n1.hw.uat: Flush TLB on changes
Signed-off-by: Asahi Lina <lina@asahilina.net>
This commit is contained in:
parent
8f2530cf64
commit
a76dd299a8
1 changed files with 7 additions and 0 deletions
|
@ -435,13 +435,20 @@ class UAT(Reloadable):
|
|||
assert addr in self.pt_cache
|
||||
table = self.pt_cache[addr]
|
||||
self.iface.writemem(addr, struct.pack(f"<{len(table)}Q", *table))
|
||||
self.p.dc_civac(addr, 0x4000)
|
||||
|
||||
def flush_dirty(self):
|
||||
inval = False
|
||||
|
||||
for page in self.dirty:
|
||||
self.flush_pt(page)
|
||||
inval = True
|
||||
|
||||
self.dirty.clear()
|
||||
|
||||
if inval:
|
||||
self.u.inst("tlbi vmalle1os")
|
||||
|
||||
def invalidate_cache(self):
|
||||
self.pt_cache = {}
|
||||
|
||||
|
|
Loading…
Reference in a new issue