summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/gr_gk20a.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/gr_gk20a.c')
-rw-r--r--drivers/gpu/nvgpu/gk20a/gr_gk20a.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/gr_gk20a.c b/drivers/gpu/nvgpu/gk20a/gr_gk20a.c
index b94eade1..a9a87a54 100644
--- a/drivers/gpu/nvgpu/gk20a/gr_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/gr_gk20a.c
@@ -5288,10 +5288,16 @@ int gk20a_gr_handle_fecs_error(struct gk20a *g, struct channel_gk20a *ch,
5288 gk20a_readl(g, gr_fecs_ctxsw_mailbox_r(6)), 5288 gk20a_readl(g, gr_fecs_ctxsw_mailbox_r(6)),
5289 isr_data->data_lo); 5289 isr_data->data_lo);
5290 ret = -1; 5290 ret = -1;
5291 } else if ((gr_fecs_intr &
5292 gr_fecs_host_int_status_watchdog_active_f()) != 0U) {
5293 /* currently, recovery is not initiated */
5294 nvgpu_err(g, "fecs watchdog triggered for channel %u, "
5295 "cannot ctxsw anymore !!", isr_data->chid);
5296 gk20a_fecs_dump_falcon_stats(g);
5291 } else { 5297 } else {
5292 nvgpu_err(g, 5298 nvgpu_err(g,
5293 "fecs error interrupt 0x%08x for channel %u", 5299 "fecs error interrupt 0x%08x for channel %u",
5294 gr_fecs_intr, isr_data->chid); 5300 gr_fecs_intr, isr_data->chid);
5295 } 5301 }
5296 5302
5297 gk20a_writel(g, gr_fecs_host_int_clear_r(), gr_fecs_intr); 5303 gk20a_writel(g, gr_fecs_host_int_clear_r(), gr_fecs_intr);