diff options
author | Mahantesh Kumbar <mkumbar@nvidia.com> | 2016-08-21 02:24:06 -0400 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2016-09-19 02:33:56 -0400 |
commit | 3351916f567dc9aacb2b05cae911a8e5573de996 (patch) | |
tree | ea534851a1e5263bea0c6aab9b3f878d9d2eef85 | |
parent | 38e272202450c4e58c1c42b11de8ed06083c317d (diff) |
gpu: nvgpu: update mclk support
- Update payload interface to support mclk
- Call mclk after gr init complete
JIRA DNVGPU-85
Change-Id: I14c5c6cb438f1a7d56d96daa0fafc09d6abef46b
Signed-off-by: Mahantesh Kumbar <mkumbar@nvidia.com>
Reviewed-on: http://git-master/r/1205461
(cherry picked from commit f1bf1ec946aaacae40ecb405341eb2e169cf5754)
Reviewed-on: http://git-master/r/1217989
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/gk20a.c | 8 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/pmu_gk20a.c | 2 | ||||
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/pmu_gk20a.h | 1 |
3 files changed, 9 insertions, 2 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.c b/drivers/gpu/nvgpu/gk20a/gk20a.c index 10fa86a1..47ce220f 100644 --- a/drivers/gpu/nvgpu/gk20a/gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/gk20a.c | |||
@@ -968,6 +968,14 @@ int gk20a_pm_finalize_poweron(struct device *dev) | |||
968 | goto done; | 968 | goto done; |
969 | } | 969 | } |
970 | 970 | ||
971 | if (g->ops.pmu.mclk_init) { | ||
972 | err = g->ops.pmu.mclk_init(g); | ||
973 | if (err) { | ||
974 | gk20a_err(dev, "failed to set mclk"); | ||
975 | /* Indicate error dont goto done */ | ||
976 | } | ||
977 | } | ||
978 | |||
971 | err = gk20a_init_therm_support(g); | 979 | err = gk20a_init_therm_support(g); |
972 | if (err) { | 980 | if (err) { |
973 | gk20a_err(dev, "failed to init gk20a therm"); | 981 | gk20a_err(dev, "failed to init gk20a therm"); |
diff --git a/drivers/gpu/nvgpu/gk20a/pmu_gk20a.c b/drivers/gpu/nvgpu/gk20a/pmu_gk20a.c index b6c07793..a2609dbb 100644 --- a/drivers/gpu/nvgpu/gk20a/pmu_gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/pmu_gk20a.c | |||
@@ -3090,8 +3090,6 @@ void pmu_setup_hw(struct work_struct *work) | |||
3090 | gk20a_dbg_pmu("pmu starting"); | 3090 | gk20a_dbg_pmu("pmu starting"); |
3091 | if (platform->can_elpg) | 3091 | if (platform->can_elpg) |
3092 | pmu_init_powergating(g); | 3092 | pmu_init_powergating(g); |
3093 | if (g->ops.pmu.mclk_init) | ||
3094 | g->ops.pmu.mclk_init(g); | ||
3095 | break; | 3093 | break; |
3096 | case PMU_STATE_ELPG_BOOTED: | 3094 | case PMU_STATE_ELPG_BOOTED: |
3097 | gk20a_dbg_pmu("elpg booted"); | 3095 | gk20a_dbg_pmu("elpg booted"); |
diff --git a/drivers/gpu/nvgpu/gk20a/pmu_gk20a.h b/drivers/gpu/nvgpu/gk20a/pmu_gk20a.h index 93247411..f0e5d3cf 100644 --- a/drivers/gpu/nvgpu/gk20a/pmu_gk20a.h +++ b/drivers/gpu/nvgpu/gk20a/pmu_gk20a.h | |||
@@ -522,6 +522,7 @@ struct pmu_payload { | |||
522 | void *buf; | 522 | void *buf; |
523 | u32 offset; | 523 | u32 offset; |
524 | u32 size; | 524 | u32 size; |
525 | u32 fb_size; | ||
525 | } in, out; | 526 | } in, out; |
526 | }; | 527 | }; |
527 | 528 | ||