From 054546525571dde1117376176f00511f13168f07 Mon Sep 17 00:00:00 2001 From: Vaikundanathan S Date: Mon, 23 Apr 2018 17:21:58 +0530 Subject: gpu: nvgpu: set gv10x boot clock - Set gv10x boot gpcclk to 952 MHz - Created ops to set gv10x boot gpcclk instead of using clk arbiter to set clocks Bug 200399373 Change-Id: Ice5956f79d4a52abf455506a798cf7b914f3d3ed Signed-off-by: Vaikundanathan S Signed-off-by: Mahantesh Kumbar Reviewed-on: https://git-master.nvidia.com/r/1700788 Reviewed-by: mobile promotions Tested-by: mobile promotions --- drivers/gpu/nvgpu/gk20a/gk20a.c | 12 ++++++++---- drivers/gpu/nvgpu/gk20a/gk20a.h | 1 + 2 files changed, 9 insertions(+), 4 deletions(-) (limited to 'drivers/gpu/nvgpu/gk20a') diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.c b/drivers/gpu/nvgpu/gk20a/gk20a.c index c48d7cf8..9ce2ef53 100644 --- a/drivers/gpu/nvgpu/gk20a/gk20a.c +++ b/drivers/gpu/nvgpu/gk20a/gk20a.c @@ -281,10 +281,14 @@ int gk20a_finalize_poweron(struct gk20a *g) } } - err = nvgpu_clk_arb_init_arbiter(g); - if (err) { - nvgpu_err(g, "failed to init clk arb"); - goto done; + if (g->ops.pmu_ver.clk.clk_set_boot_clk && nvgpu_is_enabled(g, NVGPU_PMU_PSTATE)) + g->ops.pmu_ver.clk.clk_set_boot_clk(g); + else { + err = nvgpu_clk_arb_init_arbiter(g); + if (err) { + nvgpu_err(g, "failed to init clk arb"); + goto done; + } } err = gk20a_init_therm_support(g); diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.h b/drivers/gpu/nvgpu/gk20a/gk20a.h index 8f35e2c9..07ff28f6 100644 --- a/drivers/gpu/nvgpu/gk20a/gk20a.h +++ b/drivers/gpu/nvgpu/gk20a/gk20a.h @@ -820,6 +820,7 @@ struct gpu_ops { struct nv_pmu_clk_rpc *rpccall, struct set_fll_clk *setfllclk); u32 (*perf_pmu_vfe_load)(struct gk20a *g); + u32 (*clk_set_boot_clk)(struct gk20a *g); }clk; } pmu_ver; struct { -- cgit v1.2.2