From 3351916f567dc9aacb2b05cae911a8e5573de996 Mon Sep 17 00:00:00 2001 From: Mahantesh Kumbar Date: Sun, 21 Aug 2016 11:54:06 +0530 Subject: 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 Reviewed-on: http://git-master/r/1205461 (cherry picked from commit f1bf1ec946aaacae40ecb405341eb2e169cf5754) Reviewed-on: http://git-master/r/1217989 Reviewed-by: mobile promotions Tested-by: mobile promotions --- drivers/gpu/nvgpu/gk20a/gk20a.c | 8 ++++++++ drivers/gpu/nvgpu/gk20a/pmu_gk20a.c | 2 -- drivers/gpu/nvgpu/gk20a/pmu_gk20a.h | 1 + 3 files changed, 9 insertions(+), 2 deletions(-) (limited to 'drivers/gpu/nvgpu/gk20a') 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) goto done; } + if (g->ops.pmu.mclk_init) { + err = g->ops.pmu.mclk_init(g); + if (err) { + gk20a_err(dev, "failed to set mclk"); + /* Indicate error dont goto done */ + } + } + err = gk20a_init_therm_support(g); if (err) { 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) gk20a_dbg_pmu("pmu starting"); if (platform->can_elpg) pmu_init_powergating(g); - if (g->ops.pmu.mclk_init) - g->ops.pmu.mclk_init(g); break; case PMU_STATE_ELPG_BOOTED: 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 { void *buf; u32 offset; u32 size; + u32 fb_size; } in, out; }; -- cgit v1.2.2