summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGiacomo Travaglini <giacomo.travaglini@arm.com>2019-11-12 14:43:23 +0000
committerGiacomo Travaglini <giacomo.travaglini@arm.com>2020-01-06 15:45:04 +0000
commit6f6bf2f90e71295e8c025e0d627e6cbd28d8b429 (patch)
tree3d213459dea13e4c28fc097c0683e2fdee909b15
parent6d37f2877ef27dcec1eb1d39e7f06b3e2386bcb8 (diff)
downloadgem5-6f6bf2f90e71295e8c025e0d627e6cbd28d8b429.tar.xz
dev-arm: Fix SMMUv3 16KB next-level table address masking
The next-level table address for a granule size of 16KB is retrieved from the 47:14 bits of the current table descriptor (instead of 47:12, which is the valid masking for a 4KB granule) Change-Id: I570138a34003dc034d8e67dc1209316157d57205 Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com> Reviewed-by: Michiel van Tol <michiel.vantol@arm.com> Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/23763 Tested-by: kokoro <noreply+kokoro@google.com>
-rw-r--r--src/dev/arm/smmu_v3_ptops.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/dev/arm/smmu_v3_ptops.cc b/src/dev/arm/smmu_v3_ptops.cc
index 96d876ea3..05c8bc022 100644
--- a/src/dev/arm/smmu_v3_ptops.cc
+++ b/src/dev/arm/smmu_v3_ptops.cc
@@ -273,7 +273,7 @@ V8PageTableOps16k::nextLevelPointer(pte_t pte, unsigned level) const
default: panic("bad level %d", level);
}
} else {
- return mbits(pte, 47, 12);
+ return mbits(pte, 47, 14);
}
}