diff options
author | Vaikundanathan S <vaikuns@nvidia.com> | 2018-04-23 07:51:58 -0400 |
---|---|---|
committer | Tejal Kudav <tkudav@nvidia.com> | 2018-06-14 09:44:06 -0400 |
commit | 054546525571dde1117376176f00511f13168f07 (patch) | |
tree | 477c3ef6d9502ce584f2588e0240a8fbd93be2a5 /drivers/gpu/nvgpu/clk/clk.h | |
parent | 14d8430697d6867325fc1f40eef820cca40c3d2f (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.h | 10 |
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 | ||
39 | struct gk20a; | 40 | struct gk20a; |
40 | 41 | ||
42 | int 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*/ |
42 | struct clk_pmupstate { | 45 | struct 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 | ||
62 | struct change_fll_clk { | ||
63 | u32 api_clk_domain; | ||
64 | u16 clkmhz; | ||
65 | u32 voltuv; | ||
66 | }; | ||
67 | |||
59 | struct set_fll_clk { | 68 | struct 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, | |||
133 | u32 nvgpu_clk_vf_change_inject_data_fill_gp10x(struct gk20a *g, | 142 | u32 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); |
145 | u32 nvgpu_clk_set_boot_fll_clk_gv10x(struct gk20a *g); | ||
136 | #endif | 146 | #endif |