diff options
Diffstat (limited to 'drivers/gpu')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/mm_gk20a.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/mm_gk20a.c b/drivers/gpu/nvgpu/gk20a/mm_gk20a.c index 09948a25..b01efd41 100644 --- a/drivers/gpu/nvgpu/gk20a/mm_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/mm_gk20a.c | |||
@@ -1709,7 +1709,10 @@ void gk20a_free_sgtable(struct sg_table **sgt) | |||
1709 | 1709 | ||
1710 | u64 gk20a_mm_smmu_vaddr_translate(struct gk20a *g, dma_addr_t iova) | 1710 | u64 gk20a_mm_smmu_vaddr_translate(struct gk20a *g, dma_addr_t iova) |
1711 | { | 1711 | { |
1712 | return iova | 1ULL << g->ops.mm.get_physical_addr_bits(g); | 1712 | if (!device_is_iommuable(dev_from_gk20a(g))) |
1713 | return iova; | ||
1714 | else | ||
1715 | return iova | 1ULL << g->ops.mm.get_physical_addr_bits(g); | ||
1713 | } | 1716 | } |
1714 | 1717 | ||
1715 | u64 gk20a_mm_iova_addr(struct gk20a *g, struct scatterlist *sgl) | 1718 | u64 gk20a_mm_iova_addr(struct gk20a *g, struct scatterlist *sgl) |