iommu/arm-smmu: Remove arm_smmu_flush_pgtable()
authorRobin Murphy <Robin.Murphy@arm.com>
Wed, 29 Jul 2015 18:46:10 +0000 (19:46 +0100)
committerWill Deacon <will.deacon@arm.com>
Thu, 6 Aug 2015 13:35:40 +0000 (14:35 +0100)
With the io-pgtable code now enforcing its own appropriate sync points,
the vestigial flush_pgtable callback becomes entirely redundant, so
remove it altogether.

Signed-off-by: Robin Murphy <robin.murphy@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
drivers/iommu/arm-smmu.c

index 5770ab98fa38c3c3cc2916965d42082eb0e40ae9..48a39dfa977795deb8271dc5b34a7b3e0be002d0 100644 (file)
@@ -608,23 +608,10 @@ static void arm_smmu_tlb_inv_range_nosync(unsigned long iova, size_t size,
        }
 }
 
-static void arm_smmu_flush_pgtable(void *addr, size_t size, void *cookie)
-{
-       struct arm_smmu_domain *smmu_domain = cookie;
-
-       /*
-        * Ensure new page tables are visible to a coherent hardware walker.
-        * The page table code deals with flushing for the non-coherent case.
-        */
-       if (smmu_domain->smmu->features & ARM_SMMU_FEAT_COHERENT_WALK)
-               dsb(ishst);
-}
-
 static struct iommu_gather_ops arm_smmu_gather_ops = {
        .tlb_flush_all  = arm_smmu_tlb_inv_context,
        .tlb_add_flush  = arm_smmu_tlb_inv_range_nosync,
        .tlb_sync       = arm_smmu_tlb_sync,
-       .flush_pgtable  = arm_smmu_flush_pgtable,
 };
 
 static irqreturn_t arm_smmu_context_fault(int irq, void *dev)
This page took 0.025537 seconds and 5 git commands to generate.