From d1e6ac0c3e8482409016d6f346c41c409183b63f Mon Sep 17 00:00:00 2001 From: Thomas Fleury Date: Tue, 17 Sep 2019 13:35:31 -0400 Subject: [PATCH] gpu: nvgpu: report only unhandled methods Some methods are implemented in SW, and it is expected that nvgpu driver gets illegal method interrupts for these. Do not report illegal method error if related method could be handled. It avoids reporting false errors to 3LSS and more importantly avoids entering SW quiesce state. Jira NVGPU-3896 Change-Id: I1e6ddcf20e4038398259d22957619fe7bc2e9c7d Signed-off-by: Thomas Fleury Reviewed-on: https://git-master.nvidia.com/r/2199906 Reviewed-by: mobile promotions Tested-by: mobile promotions --- drivers/gpu/nvgpu/common/gr/gr_intr.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/nvgpu/common/gr/gr_intr.c b/drivers/gpu/nvgpu/common/gr/gr_intr.c index 506f6802d..be72df34f 100644 --- a/drivers/gpu/nvgpu/common/gr/gr_intr.c +++ b/drivers/gpu/nvgpu/common/gr/gr_intr.c @@ -817,10 +817,11 @@ static u32 gr_intr_handle_illegal_interrupts(struct gk20a *g, } if (intr_info->illegal_method != 0U) { - nvgpu_gr_intr_report_exception(g, 0U, + if (gr_intr_handle_illegal_method(g, isr_data) != 0) { + nvgpu_gr_intr_report_exception(g, 0U, GPU_PGRAPH_ILLEGAL_ERROR, gr_intr, GPU_PGRAPH_ILLEGAL_METHOD); - if (gr_intr_handle_illegal_method(g, isr_data) != 0) { + do_reset = 1U; } *clear_intr &= ~intr_info->illegal_method;