summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a')
-rw-r--r--drivers/gpu/nvgpu/gk20a/gk20a.h1
-rw-r--r--drivers/gpu/nvgpu/gk20a/tsg_gk20a.c3
2 files changed, 4 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.h b/drivers/gpu/nvgpu/gk20a/gk20a.h
index c6bc129f..f577f93c 100644
--- a/drivers/gpu/nvgpu/gk20a/gk20a.h
+++ b/drivers/gpu/nvgpu/gk20a/gk20a.h
@@ -552,6 +552,7 @@ struct gpu_ops {
552 struct channel_gk20a *ch); 552 struct channel_gk20a *ch);
553 int (*tsg_unbind_channel)(struct channel_gk20a *ch); 553 int (*tsg_unbind_channel)(struct channel_gk20a *ch);
554 int (*tsg_open)(struct tsg_gk20a *tsg); 554 int (*tsg_open)(struct tsg_gk20a *tsg);
555 void (*tsg_release)(struct tsg_gk20a *tsg);
555 u32 (*eng_runlist_base_size)(void); 556 u32 (*eng_runlist_base_size)(void);
556 int (*init_engine_info)(struct fifo_gk20a *f); 557 int (*init_engine_info)(struct fifo_gk20a *f);
557 u32 (*runlist_entry_size)(void); 558 u32 (*runlist_entry_size)(void);
diff --git a/drivers/gpu/nvgpu/gk20a/tsg_gk20a.c b/drivers/gpu/nvgpu/gk20a/tsg_gk20a.c
index 8906257f..4efcfda8 100644
--- a/drivers/gpu/nvgpu/gk20a/tsg_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/tsg_gk20a.c
@@ -315,6 +315,9 @@ void gk20a_tsg_release(struct nvgpu_ref *ref)
315 struct gk20a *g = tsg->g; 315 struct gk20a *g = tsg->g;
316 struct gk20a_event_id_data *event_id_data, *event_id_data_temp; 316 struct gk20a_event_id_data *event_id_data, *event_id_data_temp;
317 317
318 if (g->ops.fifo.tsg_release)
319 g->ops.fifo.tsg_release(tsg);
320
318 if (tsg->tsg_gr_ctx) { 321 if (tsg->tsg_gr_ctx) {
319 gr_gk20a_free_tsg_gr_ctx(tsg); 322 gr_gk20a_free_tsg_gr_ctx(tsg);
320 tsg->tsg_gr_ctx = NULL; 323 tsg->tsg_gr_ctx = NULL;