summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorRichard Zhao <rizhao@nvidia.com>2016-07-05 13:17:07 -0400
committerVladislav Buzov <vbuzov@nvidia.com>2016-07-18 14:34:48 -0400
commit90988af81237d3b56c063b750c32efcbee9ab9cc (patch)
tree80b8c95e0481851dc1decf9568c4498a6a43be1e /drivers
parent26835aa99823f8b7dc24e9efe38c00bfb5e197c0 (diff)
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 <rizhao@nvidia.com> Reviewed-on: http://git-master/r/1175738 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Thomas Fleury <tfleury@nvidia.com> GVS: Gerrit_Virtual_Submit Reviewed-by: Vladislav Buzov <vbuzov@nvidia.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/gpu/nvgpu/gk20a/mm_gk20a.c7
1 files changed, 4 insertions, 3 deletions
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)
2804 2804
2805u64 gk20a_mm_smmu_vaddr_translate(struct gk20a *g, dma_addr_t iova) 2805u64 gk20a_mm_smmu_vaddr_translate(struct gk20a *g, dma_addr_t iova)
2806{ 2806{
2807 if (!device_is_iommuable(dev_from_gk20a(g)) || !g->mm.has_physical_mode) 2807 if (device_is_iommuable(dev_from_gk20a(g)) &&
2808 return iova; 2808 g->ops.mm.get_physical_addr_bits)
2809 else
2810 return iova | 1ULL << g->ops.mm.get_physical_addr_bits(g); 2809 return iova | 1ULL << g->ops.mm.get_physical_addr_bits(g);
2810
2811 return iova;
2811} 2812}
2812 2813
2813u64 gk20a_mm_iova_addr(struct gk20a *g, struct scatterlist *sgl, 2814u64 gk20a_mm_iova_addr(struct gk20a *g, struct scatterlist *sgl,