summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/clk/clk.h
diff options
context:
space:
mode:
authorVaikundanathan S <vaikuns@nvidia.com>2018-04-23 07:51:58 -0400
committerTejal Kudav <tkudav@nvidia.com>2018-06-14 09:44:06 -0400
commit054546525571dde1117376176f00511f13168f07 (patch)
tree477c3ef6d9502ce584f2588e0240a8fbd93be2a5 /drivers/gpu/nvgpu/clk/clk.h
parent14d8430697d6867325fc1f40eef820cca40c3d2f (diff)
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 <vaikuns@nvidia.com> Signed-off-by: Mahantesh Kumbar <mkumbar@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/1700788 Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/clk/clk.h')
-rw-r--r--drivers/gpu/nvgpu/clk/clk.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/clk/clk.h b/drivers/gpu/nvgpu/clk/clk.h
index 019a1c11..70b04fc4 100644
--- a/drivers/gpu/nvgpu/clk/clk.h
+++ b/drivers/gpu/nvgpu/clk/clk.h
@@ -35,9 +35,12 @@
35#define NV_PERF_DOMAIN_4X_CLOCK_DOMAIN_SKIP 0x10 35#define NV_PERF_DOMAIN_4X_CLOCK_DOMAIN_SKIP 0x10
36#define NV_PERF_DOMAIN_4X_CLOCK_DOMAIN_MASK 0x1F 36#define NV_PERF_DOMAIN_4X_CLOCK_DOMAIN_MASK 0x1F
37#define NV_PERF_DOMAIN_4X_CLOCK_DOMAIN_SHIFT 0 37#define NV_PERF_DOMAIN_4X_CLOCK_DOMAIN_SHIFT 0
38#define BOOT_GPCCLK_MHZ 952
38 39
39struct gk20a; 40struct gk20a;
40 41
42int clk_set_boot_fll_clk(struct gk20a *g);
43
41/* clock related defines for GPUs supporting clock control from pmu*/ 44/* clock related defines for GPUs supporting clock control from pmu*/
42struct clk_pmupstate { 45struct clk_pmupstate {
43 struct avfsvinobjs avfs_vinobjs; 46 struct avfsvinobjs avfs_vinobjs;
@@ -56,6 +59,12 @@ struct clockentry {
56 u32 api_clk_domain; 59 u32 api_clk_domain;
57}; 60};
58 61
62struct change_fll_clk {
63 u32 api_clk_domain;
64 u16 clkmhz;
65 u32 voltuv;
66};
67
59struct set_fll_clk { 68struct set_fll_clk {
60 u32 voltuv; 69 u32 voltuv;
61 u16 gpc2clkmhz; 70 u16 gpc2clkmhz;
@@ -133,4 +142,5 @@ u32 nvgpu_clk_vf_change_inject_data_fill_gv10x(struct gk20a *g,
133u32 nvgpu_clk_vf_change_inject_data_fill_gp10x(struct gk20a *g, 142u32 nvgpu_clk_vf_change_inject_data_fill_gp10x(struct gk20a *g,
134 struct nv_pmu_clk_rpc *rpccall, 143 struct nv_pmu_clk_rpc *rpccall,
135 struct set_fll_clk *setfllclk); 144 struct set_fll_clk *setfllclk);
145u32 nvgpu_clk_set_boot_fll_clk_gv10x(struct gk20a *g);
136#endif 146#endif