iommu/arm-smmu: Clarify MMU-500 CPRE workaround
authorRobin Murphy <robin.murphy@arm.com>
Tue, 8 Oct 2024 15:21:17 +0000 (16:21 +0100)
committerWill Deacon <will@kernel.org>
Tue, 8 Oct 2024 17:35:41 +0000 (18:35 +0100)
CPRE workarounds are implicated in at least 5 MMU-500 errata, some of
which remain unfixed. The comment and warning message have proven to be
unhelpfully misleading about this scope, so reword them to get the point
across with less risk of going out of date or confusing users.

Signed-off-by: Robin Murphy <robin.murphy@arm.com>
Link: https://lore.kernel.org/r/dfa82171b5248ad7cf1f25592101a6eec36b8c9a.1728400877.git.robin.murphy@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
drivers/iommu/arm/arm-smmu/arm-smmu-impl.c

index 9dc772f2cbb27c414fe1d83e91eb950fc5dcc82f..99030e6b16e7aaf752b19fb0bc5cf3d01ac75248 100644 (file)
@@ -130,7 +130,7 @@ int arm_mmu500_reset(struct arm_smmu_device *smmu)
 
        /*
         * Disable MMU-500's not-particularly-beneficial next-page
-        * prefetcher for the sake of errata #841119 and #826419.
+        * prefetcher for the sake of at least 5 known errata.
         */
        for (i = 0; i < smmu->num_context_banks; ++i) {
                reg = arm_smmu_cb_read(smmu, i, ARM_SMMU_CB_ACTLR);
@@ -138,7 +138,7 @@ int arm_mmu500_reset(struct arm_smmu_device *smmu)
                arm_smmu_cb_write(smmu, i, ARM_SMMU_CB_ACTLR, reg);
                reg = arm_smmu_cb_read(smmu, i, ARM_SMMU_CB_ACTLR);
                if (reg & ARM_MMU500_ACTLR_CPRE)
-                       dev_warn_once(smmu->dev, "Failed to disable prefetcher [errata #841119 and #826419], check ACR.CACHE_LOCK\n");
+                       dev_warn_once(smmu->dev, "Failed to disable prefetcher for errata workarounds, check SACR.CACHE_LOCK\n");
        }
 
        return 0;