From 356ebcef230466c05ad8e478a50271218b9a40ad Mon Sep 17 00:00:00 2001 From: Seema Khowala Date: Tue, 4 Sep 2018 13:38:28 -0700 Subject: gpu: nvgpu: dump falcon stats for fecs watchdog After fecs watchdog gets triggered, system will not do anything useful as it cannot context switch. Dumping falcon stats will help debug the issue since s/w is not triggering recovery. Bug 2113657 Change-Id: I03ccd5ad7c03daac0581775dc615174cc0e77328 Signed-off-by: Seema Khowala Reviewed-on: https://git-master.nvidia.com/r/1812720 Reviewed-by: mobile promotions Tested-by: mobile promotions --- drivers/gpu/nvgpu/gk20a/gr_gk20a.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'drivers/gpu/nvgpu/gk20a') 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, gk20a_readl(g, gr_fecs_ctxsw_mailbox_r(6)), isr_data->data_lo); ret = -1; + } else if ((gr_fecs_intr & + gr_fecs_host_int_status_watchdog_active_f()) != 0U) { + /* currently, recovery is not initiated */ + nvgpu_err(g, "fecs watchdog triggered for channel %u, " + "cannot ctxsw anymore !!", isr_data->chid); + gk20a_fecs_dump_falcon_stats(g); } else { nvgpu_err(g, - "fecs error interrupt 0x%08x for channel %u", - gr_fecs_intr, isr_data->chid); + "fecs error interrupt 0x%08x for channel %u", + gr_fecs_intr, isr_data->chid); } gk20a_writel(g, gr_fecs_host_int_clear_r(), gr_fecs_intr); -- cgit v1.2.2