Skip to content

Commit

Permalink
iommu/tegra: smmu: Remove unnecessary PTC/TLB flush all
Browse files Browse the repository at this point in the history
smmu_flush_regs() does TLB/PTC flush all when freeing a second level
page table. This isn't necessay at all since each pte entry has been
already maintained by address in the above flush_ptc_and_tlb().

Signed-off-by: Hiroshi Doyu <hdoyu@nvidia.com>
Signed-off-by: Joerg Roedel <joro@8bytes.org>
  • Loading branch information
Hiroshi Doyu authored and Joerg Roedel committed Nov 28, 2012
1 parent 9489e9d commit 37683e4
Showing 1 changed file with 1 addition and 3 deletions.
4 changes: 1 addition & 3 deletions drivers/iommu/tegra-smmu.c
Original file line number Diff line number Diff line change
Expand Up @@ -696,10 +696,8 @@ static void __smmu_iommu_unmap(struct smmu_as *as, dma_addr_t iova)
*pte = _PTE_VACANT(iova);
FLUSH_CPU_DCACHE(pte, page, sizeof(*pte));
flush_ptc_and_tlb(as->smmu, as, iova, pte, page, 0);
if (!--(*count)) {
if (!--(*count))
free_ptbl(as, iova);
smmu_flush_regs(as->smmu, 0);
}
}

static void __smmu_iommu_map_pfn(struct smmu_as *as, dma_addr_t iova,
Expand Down

0 comments on commit 37683e4

Please sign in to comment.