summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/mm_gk20a.c
diff options
context:
space:
mode:
authorTerje Bergstrom <tbergstrom@nvidia.com>2016-09-07 17:21:16 -0400
committermobile promotions <svcmobile_promotions@nvidia.com>2017-03-24 12:08:23 -0400
commit81660ab58ce695b79c94e145745512516c592afe (patch)
treeb297b9efa08c7d8718053689b9aefea50da75987 /drivers/gpu/nvgpu/gk20a/mm_gk20a.c
parentfd02ab4d540ef473df1fe189653cc521876663d6 (diff)
gpu: nvgpu: Enable CE always
All GPUs have a copy engine. So delete the flag has_ce, because it's always true. JIRA NVGPU-16 Change-Id: I89db74c7cf66b24db84301b79832862ef28100b9 Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com> Reviewed-on: http://git-master/r/1325355 Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/mm_gk20a.c')
-rw-r--r--drivers/gpu/nvgpu/gk20a/mm_gk20a.c13
1 files changed, 4 insertions, 9 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/mm_gk20a.c b/drivers/gpu/nvgpu/gk20a/mm_gk20a.c
index b9217c2c..7b08387e 100644
--- a/drivers/gpu/nvgpu/gk20a/mm_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/mm_gk20a.c
@@ -807,15 +807,13 @@ static void gk20a_vidmem_destroy(struct gk20a *g)
807static void gk20a_remove_mm_ce_support(struct mm_gk20a *mm) 807static void gk20a_remove_mm_ce_support(struct mm_gk20a *mm)
808{ 808{
809 struct gk20a *g = gk20a_from_mm(mm); 809 struct gk20a *g = gk20a_from_mm(mm);
810 struct gk20a_platform *platform = gk20a_get_platform(g->dev);
811 810
812 if (mm->vidmem.ce_ctx_id != (u32)~0) 811 if (mm->vidmem.ce_ctx_id != (u32)~0)
813 gk20a_ce_delete_context(g->dev, mm->vidmem.ce_ctx_id); 812 gk20a_ce_delete_context(g->dev, mm->vidmem.ce_ctx_id);
814 813
815 mm->vidmem.ce_ctx_id = (u32)~0; 814 mm->vidmem.ce_ctx_id = (u32)~0;
816 815
817 if (platform->has_ce) 816 gk20a_vm_remove_support_nofree(&mm->ce.vm);
818 gk20a_vm_remove_support_nofree(&mm->ce.vm);
819 817
820} 818}
821 819
@@ -991,7 +989,6 @@ int gk20a_init_mm_setup_sw(struct gk20a *g)
991{ 989{
992 struct mm_gk20a *mm = &g->mm; 990 struct mm_gk20a *mm = &g->mm;
993 int err; 991 int err;
994 struct gk20a_platform *platform = gk20a_get_platform(g->dev);
995 992
996 gk20a_dbg_fn(""); 993 gk20a_dbg_fn("");
997 994
@@ -1056,11 +1053,9 @@ int gk20a_init_mm_setup_sw(struct gk20a *g)
1056 if (err) 1053 if (err)
1057 return err; 1054 return err;
1058 1055
1059 if (platform->has_ce) { 1056 err = gk20a_init_ce_vm(mm);
1060 err = gk20a_init_ce_vm(mm); 1057 if (err)
1061 if (err) 1058 return err;
1062 return err;
1063 }
1064 1059
1065 /* set vm_alloc_share op here as gk20a_as_alloc_share needs it */ 1060 /* set vm_alloc_share op here as gk20a_as_alloc_share needs it */
1066 g->ops.mm.vm_alloc_share = gk20a_vm_alloc_share; 1061 g->ops.mm.vm_alloc_share = gk20a_vm_alloc_share;