diff --git a/drivers/gpu/nvgpu/common/pmu/pmu_pg.c b/drivers/gpu/nvgpu/common/pmu/pmu_pg.c index 3a81e21f3..e7dbf5f55 100644 --- a/drivers/gpu/nvgpu/common/pmu/pmu_pg.c +++ b/drivers/gpu/nvgpu/common/pmu/pmu_pg.c @@ -178,10 +178,15 @@ static int pmu_enable_elpg_locked(struct gk20a *g, u8 pg_engine_id) status = nvgpu_pmu_cmd_post(g, &cmd, NULL, NULL, PMU_COMMAND_QUEUE_HPQ, pmu_handle_pg_elpg_msg, pmu, &seq); - WARN_ON(status != 0); - nvgpu_log_fn(g, "done"); - return 0; + if (status != 0) { + nvgpu_log_fn(g, "pmu_enable_elpg_locked FAILED err=%d", + status); + } else { + nvgpu_log_fn(g, "done"); + } + + return status; } int nvgpu_pmu_enable_elpg(struct gk20a *g) diff --git a/drivers/gpu/nvgpu/gv11b/fifo_gv11b.c b/drivers/gpu/nvgpu/gv11b/fifo_gv11b.c index 9b5e20f6b..ed063b407 100644 --- a/drivers/gpu/nvgpu/gv11b/fifo_gv11b.c +++ b/drivers/gpu/nvgpu/gv11b/fifo_gv11b.c @@ -1279,7 +1279,9 @@ void gv11b_fifo_teardown_ch_tsg(struct gk20a *g, u32 act_eng_bitmask, /* It is safe to enable ELPG again. */ if (g->support_pmu && g->elpg_enabled) { - nvgpu_pmu_enable_elpg(g); + if (nvgpu_pmu_enable_elpg(g) != 0) { + nvgpu_err(g, "ELPG enable failed"); + } } /* release runlist_lock */