summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTerje Bergstrom <tbergstrom@nvidia.com>2017-08-02 17:53:10 -0400
committermobile promotions <svcmobile_promotions@nvidia.com>2017-08-04 13:25:49 -0400
commit2e07e0633081a838f139fac0565366383f7302c4 (patch)
tree53c6df3290a410561850028960604e5b9a77f568
parenta0a3a6323a0e4323d9dedac14b47239535b1cb8b (diff)
gpu: nvgpu: Remove unnecessary use of ACCESS_ONCE()
ACCESS_ONCE() is used for making sure that in a given place of code access a variable exactly once. It prevents compiler rearranging the read from happening earlier. Remove its use from cases where rearranging of the read does not create problems. Change-Id: I340f375e8fecc31f3a3fab543256069cb4c682dc Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/1531649 GVS: Gerrit_Virtual_Submit Reviewed-by: Alex Waterman <alexw@nvidia.com>
-rw-r--r--drivers/gpu/nvgpu/common/pmu/pmu_pg.c4
-rw-r--r--drivers/gpu/nvgpu/lpwr/lpwr.c14
2 files changed, 6 insertions, 12 deletions
diff --git a/drivers/gpu/nvgpu/common/pmu/pmu_pg.c b/drivers/gpu/nvgpu/common/pmu/pmu_pg.c
index 3cdeedcc..ca74f243 100644
--- a/drivers/gpu/nvgpu/common/pmu/pmu_pg.c
+++ b/drivers/gpu/nvgpu/common/pmu/pmu_pg.c
@@ -206,7 +206,7 @@ int nvgpu_pmu_enable_elpg(struct gk20a *g)
206 pg_engine_id++) { 206 pg_engine_id++) {
207 207
208 if (pg_engine_id == PMU_PG_ELPG_ENGINE_ID_MS && 208 if (pg_engine_id == PMU_PG_ELPG_ENGINE_ID_MS &&
209 ACCESS_ONCE(pmu->mscg_stat) == PMU_MSCG_DISABLED) 209 pmu->mscg_stat == PMU_MSCG_DISABLED)
210 continue; 210 continue;
211 211
212 if (BIT(pg_engine_id) & pg_engine_id_list) 212 if (BIT(pg_engine_id) & pg_engine_id_list)
@@ -281,7 +281,7 @@ int nvgpu_pmu_disable_elpg(struct gk20a *g)
281 pg_engine_id++) { 281 pg_engine_id++) {
282 282
283 if (pg_engine_id == PMU_PG_ELPG_ENGINE_ID_MS && 283 if (pg_engine_id == PMU_PG_ELPG_ENGINE_ID_MS &&
284 ACCESS_ONCE(pmu->mscg_stat) == PMU_MSCG_DISABLED) 284 pmu->mscg_stat == PMU_MSCG_DISABLED)
285 continue; 285 continue;
286 286
287 if (BIT(pg_engine_id) & pg_engine_id_list) { 287 if (BIT(pg_engine_id) & pg_engine_id_list) {
diff --git a/drivers/gpu/nvgpu/lpwr/lpwr.c b/drivers/gpu/nvgpu/lpwr/lpwr.c
index c80ddee0..b1189590 100644
--- a/drivers/gpu/nvgpu/lpwr/lpwr.c
+++ b/drivers/gpu/nvgpu/lpwr/lpwr.c
@@ -352,11 +352,8 @@ int nvgpu_lpwr_enable_pg(struct gk20a *g, bool pstate_lock)
352 is_mscg_supported = nvgpu_lpwr_is_mscg_supported(g, 352 is_mscg_supported = nvgpu_lpwr_is_mscg_supported(g,
353 present_pstate); 353 present_pstate);
354 if (is_mscg_supported && g->mscg_enabled) { 354 if (is_mscg_supported && g->mscg_enabled) {
355 if (!ACCESS_ONCE(pmu->mscg_stat)) { 355 if (!pmu->mscg_stat)
356 WRITE_ONCE(pmu->mscg_stat, PMU_MSCG_ENABLED); 356 pmu->mscg_stat = PMU_MSCG_ENABLED;
357 /* make status visible */
358 smp_mb();
359 }
360 } 357 }
361 358
362 is_rppg_supported = nvgpu_lpwr_is_rppg_supported(g, 359 is_rppg_supported = nvgpu_lpwr_is_rppg_supported(g,
@@ -402,11 +399,8 @@ int nvgpu_lpwr_disable_pg(struct gk20a *g, bool pstate_lock)
402 is_mscg_supported = nvgpu_lpwr_is_mscg_supported(g, 399 is_mscg_supported = nvgpu_lpwr_is_mscg_supported(g,
403 present_pstate); 400 present_pstate);
404 if (is_mscg_supported && g->mscg_enabled) { 401 if (is_mscg_supported && g->mscg_enabled) {
405 if (ACCESS_ONCE(pmu->mscg_stat)) { 402 if (pmu->mscg_stat)
406 WRITE_ONCE(pmu->mscg_stat, PMU_MSCG_DISABLED); 403 pmu->mscg_stat = PMU_MSCG_DISABLED;
407 /* make status visible */
408 smp_mb();
409 }
410 } 404 }
411 405
412exit_unlock: 406exit_unlock: