iommu/arm-smmu: restrict virtual address range to 36 bits
There appear to be bugs in the 4-level support of io-pgtable-arm. Work around this by forcing all VAs to be 36 bits maximum so that we only ever use 3 levels. Change-Id: I5354afad05f74e12c51b86c97cdf1b2e86b68949 Signed-off-by: Mitchel Humpherys <mitchelh@codeaurora.org>
This commit is contained in:
parent
eb0c3e8d4b
commit
44fba0eb33
1 changed files with 1 additions and 0 deletions
|
@ -2285,6 +2285,7 @@ static int arm_smmu_device_cfg_probe(struct arm_smmu_device *smmu)
|
|||
#ifndef CONFIG_64BIT
|
||||
smmu->va_size = min(32UL, smmu->va_size);
|
||||
#endif
|
||||
smmu->va_size = min(36UL, smmu->va_size);
|
||||
size = 0;
|
||||
if (id & ID2_PTFS_4K)
|
||||
size |= SZ_4K | SZ_2M | SZ_1G;
|
||||
|
|
Loading…
Add table
Reference in a new issue