summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/vgpu/gp10b/vgpu_mm_gp10b.c
diff options
context:
space:
mode:
authorAparna Das <aparnad@nvidia.com>2016-12-12 15:28:59 -0500
committerDeepak Nibade <dnibade@nvidia.com>2016-12-27 04:56:53 -0500
commitf41740bf08c77f54561f1b957fe552d8234524b7 (patch)
treee56a795d669dddd3c720b9dd7e806aa8e58c7b29 /drivers/gpu/nvgpu/vgpu/gp10b/vgpu_mm_gp10b.c
parent7e2d79cd65cd1c0dc32b161f6309d51e4bd5b630 (diff)
gpu: nvgpu: vgpu: no support for sparse mapping
Currently sparse mapping is not supported for gp10b in virtualized environment. Modify gpu characteristics to reflect non-implementation of this functionality. Also fix return value in vgpu_gp10b_locked_gmmu_map() on error condition. Bug 200243373 Change-Id: Ia367b923b87738a5cad0617cdb074f5a24fb1c81 Signed-off-by: Aparna Das <aparnad@nvidia.com> Reviewed-on: http://git-master/r/1269710 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Aingara Paramakuru <aparamakuru@nvidia.com> Reviewed-by: Sachit Kadle <skadle@nvidia.com> Reviewed-by: Konsta Holtta <kholtta@nvidia.com> Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com> GVS: Gerrit_Virtual_Submit Reviewed-by: Vladislav Buzov <vbuzov@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/vgpu/gp10b/vgpu_mm_gp10b.c')
-rw-r--r--drivers/gpu/nvgpu/vgpu/gp10b/vgpu_mm_gp10b.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/gpu/nvgpu/vgpu/gp10b/vgpu_mm_gp10b.c b/drivers/gpu/nvgpu/vgpu/gp10b/vgpu_mm_gp10b.c
index 8be6b19c..66fda2d9 100644
--- a/drivers/gpu/nvgpu/vgpu/gp10b/vgpu_mm_gp10b.c
+++ b/drivers/gpu/nvgpu/vgpu/gp10b/vgpu_mm_gp10b.c
@@ -74,10 +74,10 @@ static u64 vgpu_gp10b_locked_gmmu_map(struct vm_gk20a *vm,
74 /* FIXME: add support for sparse mappings */ 74 /* FIXME: add support for sparse mappings */
75 75
76 if (WARN_ON(!sgt) || WARN_ON(!g->mm.bypass_smmu)) 76 if (WARN_ON(!sgt) || WARN_ON(!g->mm.bypass_smmu))
77 return -EINVAL; 77 return 0;
78 78
79 if (space_to_skip & (page_size - 1)) 79 if (space_to_skip & (page_size - 1))
80 return -EINVAL; 80 return 0;
81 81
82 /* Allocate (or validate when map_offset != 0) the virtual address. */ 82 /* Allocate (or validate when map_offset != 0) the virtual address. */
83 if (!map_offset) { 83 if (!map_offset) {
@@ -182,4 +182,7 @@ void vgpu_gp10b_init_mm_ops(struct gpu_ops *gops)
182 182
183 gops->mm.gmmu_map = vgpu_gp10b_locked_gmmu_map; 183 gops->mm.gmmu_map = vgpu_gp10b_locked_gmmu_map;
184 gops->mm.init_mm_setup_hw = vgpu_gp10b_init_mm_setup_hw; 184 gops->mm.init_mm_setup_hw = vgpu_gp10b_init_mm_setup_hw;
185
186 /* FIXME: add support for sparse mappings */
187 gops->mm.support_sparse = NULL;
185} 188}