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.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/gr_gk20a.c b/drivers/gpu/nvgpu/gk20a/gr_gk20a.c
index 8d65f90a..4541134f 100644
--- a/drivers/gpu/nvgpu/gk20a/gr_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/gr_gk20a.c
@@ -5308,9 +5308,20 @@ int gk20a_gr_handle_fecs_error(struct gk20a *g, struct channel_gk20a *ch,
5308 gr_fecs_host_int_status_ctxsw_intr_f(CTXSW_INTR0)) != 0U) { 5308 gr_fecs_host_int_status_ctxsw_intr_f(CTXSW_INTR0)) != 0U) {
5309 u32 mailbox_value = gk20a_readl(g, gr_fecs_ctxsw_mailbox_r(6)); 5309 u32 mailbox_value = gk20a_readl(g, gr_fecs_ctxsw_mailbox_r(6));
5310 5310
5311 nvgpu_err(g, "ctxsw intr0 set by ucode, error_code: 0x%08x", 5311 if (mailbox_value == MAILBOX_VALUE_TIMESTAMP_BUFFER_FULL) {
5312 nvgpu_info(g, "ctxsw intr0 set by ucode, "
5313 "timestamp buffer full");
5314#ifdef CONFIG_GK20A_CTXSW_TRACE
5315 gk20a_fecs_trace_reset_buffer(g);
5316#else
5317 ret = -1;
5318#endif
5319 } else {
5320 nvgpu_err(g,
5321 "ctxsw intr0 set by ucode, error_code: 0x%08x",
5312 mailbox_value); 5322 mailbox_value);
5313 ret = -1; 5323 ret = -1;
5324 }
5314 } else { 5325 } else {
5315 nvgpu_err(g, 5326 nvgpu_err(g,
5316 "unhandled fecs error interrupt 0x%08x for channel %u", 5327 "unhandled fecs error interrupt 0x%08x for channel %u",