diff options
Diffstat (limited to 'drivers/iommu/tegra-smmu.c')
-rw-r--r-- | drivers/iommu/tegra-smmu.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/iommu/tegra-smmu.c b/drivers/iommu/tegra-smmu.c index 4252d743963d..25c1210c0832 100644 --- a/drivers/iommu/tegra-smmu.c +++ b/drivers/iommu/tegra-smmu.c | |||
@@ -694,10 +694,8 @@ static void __smmu_iommu_unmap(struct smmu_as *as, dma_addr_t iova) | |||
694 | *pte = _PTE_VACANT(iova); | 694 | *pte = _PTE_VACANT(iova); |
695 | FLUSH_CPU_DCACHE(pte, page, sizeof(*pte)); | 695 | FLUSH_CPU_DCACHE(pte, page, sizeof(*pte)); |
696 | flush_ptc_and_tlb(as->smmu, as, iova, pte, page, 0); | 696 | flush_ptc_and_tlb(as->smmu, as, iova, pte, page, 0); |
697 | if (!--(*count)) { | 697 | if (!--(*count)) |
698 | free_ptbl(as, iova); | 698 | free_ptbl(as, iova); |
699 | smmu_flush_regs(as->smmu, 0); | ||
700 | } | ||
701 | } | 699 | } |
702 | 700 | ||
703 | static void __smmu_iommu_map_pfn(struct smmu_as *as, dma_addr_t iova, | 701 | static void __smmu_iommu_map_pfn(struct smmu_as *as, dma_addr_t iova, |
@@ -1232,6 +1230,7 @@ static int tegra_smmu_probe(struct platform_device *pdev) | |||
1232 | 1230 | ||
1233 | smmu_debugfs_create(smmu); | 1231 | smmu_debugfs_create(smmu); |
1234 | smmu_handle = smmu; | 1232 | smmu_handle = smmu; |
1233 | bus_set_iommu(&platform_bus_type, &smmu_iommu_ops); | ||
1235 | return 0; | 1234 | return 0; |
1236 | } | 1235 | } |
1237 | 1236 | ||
@@ -1276,7 +1275,6 @@ static struct platform_driver tegra_smmu_driver = { | |||
1276 | 1275 | ||
1277 | static int __devinit tegra_smmu_init(void) | 1276 | static int __devinit tegra_smmu_init(void) |
1278 | { | 1277 | { |
1279 | bus_set_iommu(&platform_bus_type, &smmu_iommu_ops); | ||
1280 | return platform_driver_register(&tegra_smmu_driver); | 1278 | return platform_driver_register(&tegra_smmu_driver); |
1281 | } | 1279 | } |
1282 | 1280 | ||