summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/gk20a_sysfs.c
diff options
context:
space:
mode:
authorTerje Bergstrom <tbergstrom@nvidia.com>2016-08-29 12:16:12 -0400
committermobile promotions <svcmobile_promotions@nvidia.com>2016-09-08 23:05:49 -0400
commitf56ed459dde2a292b3af0dd4deb96b1090eb53a2 (patch)
treee69a53c34f6b89805ef74a63ecfacede0d864cc5 /drivers/gpu/nvgpu/gk20a/gk20a_sysfs.c
parenta0dd3ee5becb8e0f91e46654e25619b55655c017 (diff)
gpu: nvgpu: Skip calling undefined prod callbacks
Fix rest of code to not call prod callbacks that are set to NULL. Bug 1799537 Change-Id: I756bb1f7ef58ba753ac43a2be6f125107be3cf34 Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com> Reviewed-on: http://git-master/r/1209133 (cherry picked from commit 5f4d7b42b6101407fde8c4a7dcdd3633eca85ae5) Reviewed-on: http://git-master/r/1217297 Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/gk20a_sysfs.c')
-rw-r--r--drivers/gpu/nvgpu/gk20a/gk20a_sysfs.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a_sysfs.c b/drivers/gpu/nvgpu/gk20a/gk20a_sysfs.c
index 973adc7d..8ac983d9 100644
--- a/drivers/gpu/nvgpu/gk20a/gk20a_sysfs.c
+++ b/drivers/gpu/nvgpu/gk20a/gk20a_sysfs.c
@@ -104,7 +104,8 @@ static ssize_t blcg_enable_store(struct device *dev,
104 g->ops.clock_gating.blcg_fb_load_gating_prod(g, g->blcg_enabled); 104 g->ops.clock_gating.blcg_fb_load_gating_prod(g, g->blcg_enabled);
105 if (g->ops.clock_gating.blcg_fifo_load_gating_prod) 105 if (g->ops.clock_gating.blcg_fifo_load_gating_prod)
106 g->ops.clock_gating.blcg_fifo_load_gating_prod(g, g->blcg_enabled); 106 g->ops.clock_gating.blcg_fifo_load_gating_prod(g, g->blcg_enabled);
107 g->ops.clock_gating.blcg_gr_load_gating_prod(g, g->blcg_enabled); 107 if (g->ops.clock_gating.blcg_gr_load_gating_prod)
108 g->ops.clock_gating.blcg_gr_load_gating_prod(g, g->blcg_enabled);
108 if (g->ops.clock_gating.blcg_ltc_load_gating_prod) 109 if (g->ops.clock_gating.blcg_ltc_load_gating_prod)
109 g->ops.clock_gating.blcg_ltc_load_gating_prod(g, g->blcg_enabled); 110 g->ops.clock_gating.blcg_ltc_load_gating_prod(g, g->blcg_enabled);
110 if (g->ops.clock_gating.blcg_pmu_load_gating_prod) 111 if (g->ops.clock_gating.blcg_pmu_load_gating_prod)
@@ -167,10 +168,12 @@ static ssize_t slcg_enable_store(struct device *dev,
167 g->ops.clock_gating.slcg_fb_load_gating_prod(g, g->slcg_enabled); 168 g->ops.clock_gating.slcg_fb_load_gating_prod(g, g->slcg_enabled);
168 if (g->ops.clock_gating.slcg_fifo_load_gating_prod) 169 if (g->ops.clock_gating.slcg_fifo_load_gating_prod)
169 g->ops.clock_gating.slcg_fifo_load_gating_prod(g, g->slcg_enabled); 170 g->ops.clock_gating.slcg_fifo_load_gating_prod(g, g->slcg_enabled);
170 g->ops.clock_gating.slcg_gr_load_gating_prod(g, g->slcg_enabled); 171 if (g->ops.clock_gating.slcg_gr_load_gating_prod)
172 g->ops.clock_gating.slcg_gr_load_gating_prod(g, g->slcg_enabled);
171 if (g->ops.clock_gating.slcg_ltc_load_gating_prod) 173 if (g->ops.clock_gating.slcg_ltc_load_gating_prod)
172 g->ops.clock_gating.slcg_ltc_load_gating_prod(g, g->slcg_enabled); 174 g->ops.clock_gating.slcg_ltc_load_gating_prod(g, g->slcg_enabled);
173 g->ops.clock_gating.slcg_perf_load_gating_prod(g, g->slcg_enabled); 175 if (g->ops.clock_gating.slcg_perf_load_gating_prod)
176 g->ops.clock_gating.slcg_perf_load_gating_prod(g, g->slcg_enabled);
174 if (g->ops.clock_gating.slcg_priring_load_gating_prod) 177 if (g->ops.clock_gating.slcg_priring_load_gating_prod)
175 g->ops.clock_gating.slcg_priring_load_gating_prod(g, g->slcg_enabled); 178 g->ops.clock_gating.slcg_priring_load_gating_prod(g, g->slcg_enabled);
176 if (g->ops.clock_gating.slcg_pmu_load_gating_prod) 179 if (g->ops.clock_gating.slcg_pmu_load_gating_prod)