Revert "iommu/arm-smmu-v3: Disable detection of ATS and PRI"
authorWill Deacon <will@kernel.org>
Wed, 21 Aug 2019 17:41:27 +0000 (18:41 +0100)
committerWill Deacon <will@kernel.org>
Thu, 22 Aug 2019 17:16:19 +0000 (18:16 +0100)
This reverts commit b5e86196b83fd68e065a7c811ab8925fb0dc3893.

Now that ATC invalidation is performed in the correct places and without
incurring a locking overhead for non-ATS systems, we can re-enable the
corresponding SMMU feature detection.

Signed-off-by: Will Deacon <will@kernel.org>
drivers/iommu/arm-smmu-v3.c

index 0e43529d55fe87171a33b10b653c6271b36d4f04..b8049ea2e455763454643d2d329a44e4e9c510c4 100644 (file)
@@ -3336,13 +3336,11 @@ static int arm_smmu_device_hw_probe(struct arm_smmu_device *smmu)
        }
 
        /* Boolean feature flags */
-#if 0  /* ATS invalidation is slow and broken */
        if (IS_ENABLED(CONFIG_PCI_PRI) && reg & IDR0_PRI)
                smmu->features |= ARM_SMMU_FEAT_PRI;
 
        if (IS_ENABLED(CONFIG_PCI_ATS) && reg & IDR0_ATS)
                smmu->features |= ARM_SMMU_FEAT_ATS;
-#endif
 
        if (reg & IDR0_SEV)
                smmu->features |= ARM_SMMU_FEAT_SEV;