diff options
Diffstat (limited to 'drivers/iommu')
-rw-r--r-- | drivers/iommu/tegra-smmu.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/iommu/tegra-smmu.c b/drivers/iommu/tegra-smmu.c index a741661fb786..b686692d8572 100644 --- a/drivers/iommu/tegra-smmu.c +++ b/drivers/iommu/tegra-smmu.c @@ -1365,10 +1365,12 @@ static int smmu_iommu_attach_dev(struct iommu_domain *domain, map = temp; while (area && area->size) { + DEFINE_DMA_ATTRS(attrs); size_t size = PAGE_ALIGN(area->size); - err = iommu_map(domain, area->start, area->start, size, 0); - if (err) + dma_set_attr(DMA_ATTR_SKIP_CPU_SYNC, &attrs); + err = dma_map_linear_attrs(dev, area->start, size, 0, &attrs); + if (err == DMA_ERROR_CODE) dev_err(dev, "Failed to map %016llx(%x)\n", (u64)area->start, size); |