summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/dbg_gpu_gk20a.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/dbg_gpu_gk20a.c')
-rw-r--r--drivers/gpu/nvgpu/gk20a/dbg_gpu_gk20a.c30
1 files changed, 18 insertions, 12 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/dbg_gpu_gk20a.c b/drivers/gpu/nvgpu/gk20a/dbg_gpu_gk20a.c
index f1f2cc70..d15386d7 100644
--- a/drivers/gpu/nvgpu/gk20a/dbg_gpu_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/dbg_gpu_gk20a.c
@@ -1088,12 +1088,15 @@ static int dbg_set_powergate(struct dbg_session_gk20a *dbg_s, u32 powermode)
1088 /*do elpg disable before clock gating */ 1088 /*do elpg disable before clock gating */
1089 if (support_gk20a_pmu(g->dev)) 1089 if (support_gk20a_pmu(g->dev))
1090 gk20a_pmu_disable_elpg(g); 1090 gk20a_pmu_disable_elpg(g);
1091 g->ops.clock_gating.slcg_gr_load_gating_prod(g, 1091 if (g->ops.clock_gating.slcg_gr_load_gating_prod)
1092 false); 1092 g->ops.clock_gating.slcg_gr_load_gating_prod(g,
1093 g->ops.clock_gating.slcg_perf_load_gating_prod(g, 1093 false);
1094 false); 1094 if (g->ops.clock_gating.slcg_perf_load_gating_prod)
1095 g->ops.clock_gating.slcg_ltc_load_gating_prod(g, 1095 g->ops.clock_gating.slcg_perf_load_gating_prod(g,
1096 false); 1096 false);
1097 if (g->ops.clock_gating.slcg_ltc_load_gating_prod)
1098 g->ops.clock_gating.slcg_ltc_load_gating_prod(g,
1099 false);
1097 1100
1098 gr_gk20a_init_cg_mode(g, BLCG_MODE, BLCG_RUN); 1101 gr_gk20a_init_cg_mode(g, BLCG_MODE, BLCG_RUN);
1099 g->elcg_enabled = false; 1102 g->elcg_enabled = false;
@@ -1120,12 +1123,15 @@ static int dbg_set_powergate(struct dbg_session_gk20a *dbg_s, u32 powermode)
1120 gr_gk20a_init_cg_mode(g, ELCG_MODE, ELCG_AUTO); 1123 gr_gk20a_init_cg_mode(g, ELCG_MODE, ELCG_AUTO);
1121 gr_gk20a_init_cg_mode(g, BLCG_MODE, BLCG_AUTO); 1124 gr_gk20a_init_cg_mode(g, BLCG_MODE, BLCG_AUTO);
1122 1125
1123 g->ops.clock_gating.slcg_ltc_load_gating_prod(g, 1126 if (g->ops.clock_gating.slcg_ltc_load_gating_prod)
1124 g->slcg_enabled); 1127 g->ops.clock_gating.slcg_ltc_load_gating_prod(g,
1125 g->ops.clock_gating.slcg_perf_load_gating_prod(g, 1128 g->slcg_enabled);
1126 g->slcg_enabled); 1129 if (g->ops.clock_gating.slcg_perf_load_gating_prod)
1127 g->ops.clock_gating.slcg_gr_load_gating_prod(g, 1130 g->ops.clock_gating.slcg_perf_load_gating_prod(g,
1128 g->slcg_enabled); 1131 g->slcg_enabled);
1132 if (g->ops.clock_gating.slcg_gr_load_gating_prod)
1133 g->ops.clock_gating.slcg_gr_load_gating_prod(g,
1134 g->slcg_enabled);
1129 1135
1130 if (support_gk20a_pmu(g->dev)) 1136 if (support_gk20a_pmu(g->dev))
1131 gk20a_pmu_enable_elpg(g); 1137 gk20a_pmu_enable_elpg(g);