diff options
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/gr_ctx_gk20a.c')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/gr_ctx_gk20a.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/gr_ctx_gk20a.c b/drivers/gpu/nvgpu/gk20a/gr_ctx_gk20a.c index eff45cb0..6e069d99 100644 --- a/drivers/gpu/nvgpu/gk20a/gr_ctx_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/gr_ctx_gk20a.c | |||
@@ -333,6 +333,14 @@ static int gr_gk20a_init_ctx_vars_fw(struct gk20a *g, struct gr_gk20a *gr) | |||
333 | if (err) | 333 | if (err) |
334 | goto clean_up; | 334 | goto clean_up; |
335 | break; | 335 | break; |
336 | case NETLIST_REGIONID_CTXREG_ETPC: | ||
337 | gk20a_dbg_info("NETLIST_REGIONID_CTXREG_ETPC"); | ||
338 | err = gr_gk20a_alloc_load_netlist_aiv(g, | ||
339 | src, size, &g->gr.ctx_vars.ctxsw_regs.etpc); | ||
340 | if (err) | ||
341 | goto clean_up; | ||
342 | break; | ||
343 | |||
336 | default: | 344 | default: |
337 | gk20a_dbg_info("unrecognized region %d skipped", i); | 345 | gk20a_dbg_info("unrecognized region %d skipped", i); |
338 | break; | 346 | break; |
@@ -383,6 +391,7 @@ clean_up: | |||
383 | nvgpu_kfree(g, g->gr.ctx_vars.ctxsw_regs.perf_pma.l); | 391 | nvgpu_kfree(g, g->gr.ctx_vars.ctxsw_regs.perf_pma.l); |
384 | nvgpu_kfree(g, g->gr.ctx_vars.ctxsw_regs.pm_rop.l); | 392 | nvgpu_kfree(g, g->gr.ctx_vars.ctxsw_regs.pm_rop.l); |
385 | nvgpu_kfree(g, g->gr.ctx_vars.ctxsw_regs.pm_ucgpc.l); | 393 | nvgpu_kfree(g, g->gr.ctx_vars.ctxsw_regs.pm_ucgpc.l); |
394 | nvgpu_kfree(g, g->gr.ctx_vars.ctxsw_regs.etpc.l); | ||
386 | nvgpu_release_firmware(g, netlist_fw); | 395 | nvgpu_release_firmware(g, netlist_fw); |
387 | err = -ENOENT; | 396 | err = -ENOENT; |
388 | } | 397 | } |