summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/fifo_gk20a.c
diff options
context:
space:
mode:
authorTerje Bergstrom <tbergstrom@nvidia.com>2014-11-04 05:17:21 -0500
committerDan Willemsen <dwillemsen@nvidia.com>2015-03-18 15:12:02 -0400
commitafc470e867b7feb9338ccb086ace8989604683e0 (patch)
tree3ee866fb4977be9d96e25ce76f9245ce2d777b02 /drivers/gpu/nvgpu/gk20a/fifo_gk20a.c
parentb3f575074b66e8af1a9943874f9782b793fa7edc (diff)
gpu: nvgpu: Do not call ELPG if disabled
Do not call PMU ELPG calls if ELPG should be disabled. Also skips initialization of PMU ucode if PMU is disabled. Bug 1567274 Change-Id: Ia9cd3b553c358142ee05a1b0e0832f9412f7cf17 Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com> Reviewed-on: http://git-master/r/593335 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Seshendra Gadagottu <sgadagottu@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/fifo_gk20a.c')
-rw-r--r--drivers/gpu/nvgpu/gk20a/fifo_gk20a.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/fifo_gk20a.c b/drivers/gpu/nvgpu/gk20a/fifo_gk20a.c
index 4095b079..df6b84c5 100644
--- a/drivers/gpu/nvgpu/gk20a/fifo_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/fifo_gk20a.c
@@ -900,7 +900,8 @@ void fifo_gk20a_finish_mmu_fault_handling(struct gk20a *g,
900 gr_gpfifo_ctl_semaphore_access_enabled_f()); 900 gr_gpfifo_ctl_semaphore_access_enabled_f());
901 901
902 /* It is safe to enable ELPG again. */ 902 /* It is safe to enable ELPG again. */
903 gk20a_pmu_enable_elpg(g); 903 if (support_gk20a_pmu(g->dev) && g->elpg_enabled)
904 gk20a_pmu_enable_elpg(g);
904} 905}
905 906
906static bool gk20a_fifo_set_ctx_mmu_error(struct gk20a *g, 907static bool gk20a_fifo_set_ctx_mmu_error(struct gk20a *g,
@@ -974,7 +975,8 @@ static bool gk20a_fifo_handle_mmu_fault(struct gk20a *g)
974 g->fifo.deferred_reset_pending = false; 975 g->fifo.deferred_reset_pending = false;
975 976
976 /* Disable power management */ 977 /* Disable power management */
977 gk20a_pmu_disable_elpg(g); 978 if (support_gk20a_pmu(g->dev) && g->elpg_enabled)
979 gk20a_pmu_disable_elpg(g);
978 g->ops.clock_gating.slcg_gr_load_gating_prod(g, 980 g->ops.clock_gating.slcg_gr_load_gating_prod(g,
979 false); 981 false);
980 g->ops.clock_gating.slcg_perf_load_gating_prod(g, 982 g->ops.clock_gating.slcg_perf_load_gating_prod(g,