diff options
author | seshendra Gadagottu <sgadagottu@nvidia.com> | 2018-02-08 21:50:58 -0500 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2018-02-13 19:27:28 -0500 |
commit | eb03270ff65b0fa52d080c2e8700acdf42b9ddee (patch) | |
tree | d555b9f85778f56354d2118f5e16dd573a6b4706 /drivers/gpu/nvgpu/gv11b/mm_gv11b.c | |
parent | cc53490af534e7acf1764081756bf12c1e3a45ee (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.c | 3 |
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 | ||
64 | bool gv11b_mm_mmu_fault_pending(struct gk20a *g) | 67 | bool gv11b_mm_mmu_fault_pending(struct gk20a *g) |