From 90988af81237d3b56c063b750c32efcbee9ab9cc Mon Sep 17 00:00:00 2001 From: Richard Zhao Date: Tue, 5 Jul 2016 10:17:07 -0700 Subject: gpu: nvgpu: fix gk20a_mm_smmu_vaddr_translate() - remove checking of has_physical_mode - check whether get_physical_addr_bits is null JIRA VFND-1965 Change-Id: If19b297dc853b9e0b5879c5b2e0a350b5d9b279a Signed-off-by: Richard Zhao Reviewed-on: http://git-master/r/1175738 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Thomas Fleury GVS: Gerrit_Virtual_Submit Reviewed-by: Vladislav Buzov --- drivers/gpu/nvgpu/gk20a/mm_gk20a.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'drivers/gpu/nvgpu/gk20a/mm_gk20a.c') diff --git a/drivers/gpu/nvgpu/gk20a/mm_gk20a.c b/drivers/gpu/nvgpu/gk20a/mm_gk20a.c index 7e4adc5b..673aafda 100644 --- a/drivers/gpu/nvgpu/gk20a/mm_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/mm_gk20a.c @@ -2804,10 +2804,11 @@ void gk20a_free_sgtable(struct sg_table **sgt) u64 gk20a_mm_smmu_vaddr_translate(struct gk20a *g, dma_addr_t iova) { - if (!device_is_iommuable(dev_from_gk20a(g)) || !g->mm.has_physical_mode) - return iova; - else + if (device_is_iommuable(dev_from_gk20a(g)) && + g->ops.mm.get_physical_addr_bits) return iova | 1ULL << g->ops.mm.get_physical_addr_bits(g); + + return iova; } u64 gk20a_mm_iova_addr(struct gk20a *g, struct scatterlist *sgl, -- cgit v1.2.2