diff options
Diffstat (limited to 'drivers/gpu/nvgpu/gp10b/mm_gp10b.c')
-rw-r--r-- | drivers/gpu/nvgpu/gp10b/mm_gp10b.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gp10b/mm_gp10b.c b/drivers/gpu/nvgpu/gp10b/mm_gp10b.c index ae9c5c7e..d3297e31 100644 --- a/drivers/gpu/nvgpu/gp10b/mm_gp10b.c +++ b/drivers/gpu/nvgpu/gp10b/mm_gp10b.c | |||
@@ -368,6 +368,15 @@ static void gp10b_mm_init_pdb(struct gk20a *g, void *inst_ptr, u64 pdb_addr) | |||
368 | ram_in_page_dir_base_hi_f(pdb_addr_hi)); | 368 | ram_in_page_dir_base_hi_f(pdb_addr_hi)); |
369 | } | 369 | } |
370 | 370 | ||
371 | static void gp10b_remove_bar2_vm(struct gk20a *g) | ||
372 | { | ||
373 | struct mm_gk20a *mm = &g->mm; | ||
374 | |||
375 | gp10b_replayable_pagefault_buffer_deinit(g); | ||
376 | gk20a_remove_vm(&mm->bar2.vm, &mm->bar2.inst_block); | ||
377 | } | ||
378 | |||
379 | |||
371 | void gp10b_init_mm(struct gpu_ops *gops) | 380 | void gp10b_init_mm(struct gpu_ops *gops) |
372 | { | 381 | { |
373 | gm20b_init_mm(gops); | 382 | gm20b_init_mm(gops); |
@@ -378,4 +387,5 @@ void gp10b_init_mm(struct gpu_ops *gops) | |||
378 | gops->mm.get_iova_addr = gp10b_mm_iova_addr; | 387 | gops->mm.get_iova_addr = gp10b_mm_iova_addr; |
379 | gops->mm.get_mmu_levels = gp10b_mm_get_mmu_levels; | 388 | gops->mm.get_mmu_levels = gp10b_mm_get_mmu_levels; |
380 | gops->mm.init_pdb = gp10b_mm_init_pdb; | 389 | gops->mm.init_pdb = gp10b_mm_init_pdb; |
390 | gops->mm.remove_bar2_vm = gp10b_remove_bar2_vm; | ||
381 | } | 391 | } |