diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/gpu/nvgpu/common/linux/driver_common.c | 2 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/gk20a.h | 1 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/pmu_gk20a.c | 3 |
3 files changed, 4 insertions, 2 deletions
diff --git a/drivers/gpu/nvgpu/common/linux/driver_common.c b/drivers/gpu/nvgpu/common/linux/driver_common.c index af26996b..67584f95 100644 --- a/drivers/gpu/nvgpu/common/linux/driver_common.c +++ b/drivers/gpu/nvgpu/common/linux/driver_common.c | |||
@@ -102,6 +102,8 @@ static void nvgpu_init_pm_vars(struct gk20a *g) | |||
102 | nvgpu_platform_is_silicon(g) ? platform->enable_aelpg : false; | 102 | nvgpu_platform_is_silicon(g) ? platform->enable_aelpg : false; |
103 | g->mscg_enabled = | 103 | g->mscg_enabled = |
104 | nvgpu_platform_is_silicon(g) ? platform->enable_mscg : false; | 104 | nvgpu_platform_is_silicon(g) ? platform->enable_mscg : false; |
105 | g->can_elpg = | ||
106 | nvgpu_platform_is_silicon(g) ? platform->can_elpg : false; | ||
105 | 107 | ||
106 | /* set default values to aelpg parameters */ | 108 | /* set default values to aelpg parameters */ |
107 | g->pmu.aelpg_param[0] = APCTRL_SAMPLING_PERIOD_PG_DEFAULT_US; | 109 | g->pmu.aelpg_param[0] = APCTRL_SAMPLING_PERIOD_PG_DEFAULT_US; |
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.h b/drivers/gpu/nvgpu/gk20a/gk20a.h index 9860910c..76251000 100644 --- a/drivers/gpu/nvgpu/gk20a/gk20a.h +++ b/drivers/gpu/nvgpu/gk20a/gk20a.h | |||
@@ -981,6 +981,7 @@ struct gk20a { | |||
981 | bool elcg_enabled; | 981 | bool elcg_enabled; |
982 | bool elpg_enabled; | 982 | bool elpg_enabled; |
983 | bool aelpg_enabled; | 983 | bool aelpg_enabled; |
984 | bool can_elpg; | ||
984 | bool mscg_enabled; | 985 | bool mscg_enabled; |
985 | bool forced_idle; | 986 | bool forced_idle; |
986 | bool forced_reset; | 987 | bool forced_reset; |
diff --git a/drivers/gpu/nvgpu/gk20a/pmu_gk20a.c b/drivers/gpu/nvgpu/gk20a/pmu_gk20a.c index 0ca8851f..257d9f7c 100644 --- a/drivers/gpu/nvgpu/gk20a/pmu_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/pmu_gk20a.c | |||
@@ -3326,12 +3326,11 @@ void pmu_setup_hw(struct work_struct *work) | |||
3326 | { | 3326 | { |
3327 | struct pmu_gk20a *pmu = container_of(work, struct pmu_gk20a, pg_init); | 3327 | struct pmu_gk20a *pmu = container_of(work, struct pmu_gk20a, pg_init); |
3328 | struct gk20a *g = gk20a_from_pmu(pmu); | 3328 | struct gk20a *g = gk20a_from_pmu(pmu); |
3329 | struct gk20a_platform *platform = dev_get_drvdata(g->dev); | ||
3330 | 3329 | ||
3331 | switch (pmu->pmu_state) { | 3330 | switch (pmu->pmu_state) { |
3332 | case PMU_STATE_INIT_RECEIVED: | 3331 | case PMU_STATE_INIT_RECEIVED: |
3333 | gk20a_dbg_pmu("pmu starting"); | 3332 | gk20a_dbg_pmu("pmu starting"); |
3334 | if (platform->can_elpg) | 3333 | if (g->can_elpg) |
3335 | pmu_init_powergating(g); | 3334 | pmu_init_powergating(g); |
3336 | break; | 3335 | break; |
3337 | case PMU_STATE_ELPG_BOOTED: | 3336 | case PMU_STATE_ELPG_BOOTED: |