summaryrefslogtreecommitdiffstats
path: root/drivers/gpu
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu')
-rw-r--r--drivers/gpu/nvgpu/gk20a/gr_gk20a.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/gr_gk20a.c b/drivers/gpu/nvgpu/gk20a/gr_gk20a.c
index 4dbdb777..0e8c1884 100644
--- a/drivers/gpu/nvgpu/gk20a/gr_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/gr_gk20a.c
@@ -6212,6 +6212,8 @@ int gk20a_gr_isr(struct gk20a *g)
6212 return 0; 6212 return 0;
6213 6213
6214 gr_engine_id = gk20a_fifo_get_gr_engine_id(g); 6214 gr_engine_id = gk20a_fifo_get_gr_engine_id(g);
6215 if (gr_engine_id != FIFO_INVAL_ENGINE_ID)
6216 gr_engine_id = BIT(gr_engine_id);
6215 6217
6216 grfifo_ctl = gk20a_readl(g, gr_gpfifo_ctl_r()); 6218 grfifo_ctl = gk20a_readl(g, gr_gpfifo_ctl_r());
6217 grfifo_ctl &= ~gr_gpfifo_ctl_semaphore_access_f(1); 6219 grfifo_ctl &= ~gr_gpfifo_ctl_semaphore_access_f(1);
@@ -6371,13 +6373,13 @@ int gk20a_gr_isr(struct gk20a *g)
6371 6373
6372 if (need_reset) { 6374 if (need_reset) {
6373 if (tsgid != NVGPU_INVALID_TSG_ID) 6375 if (tsgid != NVGPU_INVALID_TSG_ID)
6374 gk20a_fifo_recover(g, BIT(gr_engine_id), 6376 gk20a_fifo_recover(g, gr_engine_id,
6375 tsgid, true, true, true); 6377 tsgid, true, true, true);
6376 else if (ch) 6378 else if (ch)
6377 gk20a_fifo_recover(g, BIT(gr_engine_id), 6379 gk20a_fifo_recover(g, gr_engine_id,
6378 ch->hw_chid, false, true, true); 6380 ch->hw_chid, false, true, true);
6379 else 6381 else
6380 gk20a_fifo_recover(g, BIT(gr_engine_id), 6382 gk20a_fifo_recover(g, gr_engine_id,
6381 0, false, false, true); 6383 0, false, false, true);
6382 } 6384 }
6383 6385