dev-arm: Fix address used to update the SMMUv3 Walk Cache
authorMarc Mari Barcelo <marc.maribarcelo@arm.com>
Wed, 18 Sep 2019 17:10:42 +0000 (18:10 +0100)
committerGiacomo Travaglini <giacomo.travaglini@arm.com>
Wed, 2 Oct 2019 15:55:06 +0000 (15:55 +0000)
Last level of SMMUv3 WalkCache should store the address without an offset.

Change-Id: I1046bd8210500c2c38802acd41a4403e52fd3c90
Reviewed-by: Giacomo Travaglini <giacomo.travaglini@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/21302
Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
Maintainer: Andreas Sandberg <andreas.sandberg@arm.com>
Tested-by: kokoro <noreply+kokoro@google.com>
src/dev/arm/smmu_v3_transl.cc

index 429cc2b44739c58a3ac8352c7ae866b69d209739..b2868268699091ccc3192692c7f2911f7b9dff34 100644 (file)
@@ -803,7 +803,7 @@ SMMUTranslationProcess::walkStage1And2(Yield &yield, Addr addr,
         tr = combineTranslations(tr, s2tr);
     }
 
-    walkCacheUpdate(yield, addr, tr.addrMask, tr.addr,
+    walkCacheUpdate(yield, addr, tr.addrMask, walkPtr,
                     1, level, true, tr.writable);
 
     return tr;