[PATCH v2 6/9] iommu/arm-smmu-v3: Remove io-pgtable-arm from sva.c
Jason Gunthorpe
jgg at nvidia.com
Wed Aug 12 13:09:22 PDT 2026
This is only being used to get some STE constants. Use the same constants
from the arm architecture code in sysreg.h instead.
Signed-off-by: Jason Gunthorpe <jgg at nvidia.com>
---
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3-sva.c | 15 ++++++++-------
1 file changed, 8 insertions(+), 7 deletions(-)
diff --git a/drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3-sva.c b/drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3-sva.c
index 5a17172df381d5..e7f63766630ed2 100644
--- a/drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3-sva.c
+++ b/drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3-sva.c
@@ -10,8 +10,9 @@
#include <linux/slab.h>
#include <kunit/visibility.h>
+#include <asm/sysreg.h>
+
#include "arm-smmu-v3.h"
-#include "../../io-pgtable-arm.h"
static void __maybe_unused
arm_smmu_update_s1_domain_cd_entry(struct arm_smmu_domain *smmu_domain)
@@ -41,10 +42,10 @@ static u64 page_size_to_cd(void)
static_assert(PAGE_SIZE == SZ_4K || PAGE_SIZE == SZ_16K ||
PAGE_SIZE == SZ_64K);
if (PAGE_SIZE == SZ_64K)
- return ARM_LPAE_TCR_TG0_64K;
+ return TCR_EL1_TG0_64K;
if (PAGE_SIZE == SZ_16K)
- return ARM_LPAE_TCR_TG0_16K;
- return ARM_LPAE_TCR_TG0_4K;
+ return TCR_EL1_TG0_16K;
+ return TCR_EL1_TG0_4K;
}
VISIBLE_IF_KUNIT
@@ -85,10 +86,10 @@ void arm_smmu_make_sva_cd(struct arm_smmu_cd *target,
64ULL - vabits_actual) |
FIELD_PREP(CTXDESC_CD_0_TCR_TG0, page_size_to_cd()) |
FIELD_PREP(CTXDESC_CD_0_TCR_IRGN0,
- ARM_LPAE_TCR_RGN_WBWA) |
+ TCR_EL1_IRGN0_WBWA) |
FIELD_PREP(CTXDESC_CD_0_TCR_ORGN0,
- ARM_LPAE_TCR_RGN_WBWA) |
- FIELD_PREP(CTXDESC_CD_0_TCR_SH0, ARM_LPAE_TCR_SH_IS));
+ TCR_EL1_ORGN0_WBWA) |
+ FIELD_PREP(CTXDESC_CD_0_TCR_SH0, TCR_EL1_SH0_INNER));
target->data[1] = cpu_to_le64(virt_to_phys(mm->pgd) &
CTXDESC_CD_1_TTB0_MASK);
--
2.43.0
More information about the linux-arm-kernel
mailing list