summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gv11b/mm_gv11b.c
diff options
context:
space:
mode:
authorseshendra Gadagottu <sgadagottu@nvidia.com>2018-02-08 21:50:58 -0500
committermobile promotions <svcmobile_promotions@nvidia.com>2018-02-13 19:27:28 -0500
commiteb03270ff65b0fa52d080c2e8700acdf42b9ddee (patch)
treed555b9f85778f56354d2118f5e16dd573a6b4706 /drivers/gpu/nvgpu/gv11b/mm_gv11b.c
parentcc53490af534e7acf1764081756bf12c1e3a45ee (diff)
gpu: nvgpu: gv11b: update subctx pdb info
Updated subctx pdb info for all instblks created. Earlier subctx pdb info was getting updated during instblk commit. But some instblks like pmu instblk are never committed. Missing subctx pdb info in instblk is creating issues accessing subctx info. So, by filling subctx pdb info during instblk creation fixed all these issues. Also as part of re-org of the function gv11b_init_subcontext_pdb, moved setting subctx info in ram_in_engine_wfi_veid_w() to channel_gv11b_setup_ramfc. Bug 2051863 Change-Id: Ida96118e8f86b638fa6a8586d026ad2617ebbf64 Signed-off-by: seshendra Gadagottu <sgadagottu@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/1654678 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com> Reviewed-by: Alex Waterman <alexw@nvidia.com> GVS: Gerrit_Virtual_Submit Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com> Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gv11b/mm_gv11b.c')
-rw-r--r--drivers/gpu/nvgpu/gv11b/mm_gv11b.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gv11b/mm_gv11b.c b/drivers/gpu/nvgpu/gv11b/mm_gv11b.c
index 8d307d7c..ade1d9fe 100644
--- a/drivers/gpu/nvgpu/gv11b/mm_gv11b.c
+++ b/drivers/gpu/nvgpu/gv11b/mm_gv11b.c
@@ -35,6 +35,7 @@
35 35
36#include "mm_gv11b.h" 36#include "mm_gv11b.h"
37#include "fb_gv11b.h" 37#include "fb_gv11b.h"
38#include "subctx_gv11b.h"
38 39
39#include <nvgpu/hw/gv11b/hw_fb_gv11b.h> 40#include <nvgpu/hw/gv11b/hw_fb_gv11b.h>
40#include <nvgpu/hw/gv11b/hw_gmmu_gv11b.h> 41#include <nvgpu/hw/gv11b/hw_gmmu_gv11b.h>
@@ -59,6 +60,8 @@ void gv11b_init_inst_block(struct nvgpu_mem *inst_block,
59 60
60 if (big_page_size && g->ops.mm.set_big_page_size) 61 if (big_page_size && g->ops.mm.set_big_page_size)
61 g->ops.mm.set_big_page_size(g, inst_block, big_page_size); 62 g->ops.mm.set_big_page_size(g, inst_block, big_page_size);
63
64 gv11b_init_subcontext_pdb(vm, inst_block);
62} 65}
63 66
64bool gv11b_mm_mmu_fault_pending(struct gk20a *g) 67bool gv11b_mm_mmu_fault_pending(struct gk20a *g)