summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/clk_gk20a.h
diff options
context:
space:
mode:
authorAlex Frid <afrid@nvidia.com>2015-04-14 22:45:40 -0400
committerIshan Mittal <imittal@nvidia.com>2015-05-18 01:49:49 -0400
commitd1342b8aa2fc384b2672ffcf9d34249b6ff7868c (patch)
tree39e4e688d00228bb0bd3464a099c7f89d936c2d0 /drivers/gpu/nvgpu/gk20a/clk_gk20a.h
parent1767c779514c9bb10321e39dc8af47cab760bc2b (diff)
gpu: nvgpu: Combine delays with GM20B parameters
Added delays definitions to GPCPLL parameters structure: - locking timeout delay (applied to locking in fixed frequency mode and to PLL dynamic ramp in any mode) - lock delay for GPCPLL NA mode - IDDQ exit delay in any mode Specified delay parameters for GM20B PLL, and used this data instead of hard-coded numbers. Change-Id: I63ce0abc9ee900c36ec34b8641513db3cbb6f7d5 Signed-off-by: Alex Frid <afrid@nvidia.com> Reviewed-on: http://git-master/r/732094 Reviewed-by: Seshendra Gadagottu <sgadagottu@nvidia.com> Reviewed-by: Yu-Huan Hsu <yhsu@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/clk_gk20a.h')
-rw-r--r--drivers/gpu/nvgpu/gk20a/clk_gk20a.h15
1 files changed, 12 insertions, 3 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/clk_gk20a.h b/drivers/gpu/nvgpu/gk20a/clk_gk20a.h
index c766fc46..9f5ea39e 100644
--- a/drivers/gpu/nvgpu/gk20a/clk_gk20a.h
+++ b/drivers/gpu/nvgpu/gk20a/clk_gk20a.h
@@ -25,8 +25,8 @@ enum {
25}; 25};
26 26
27enum gpc_pll_mode { 27enum gpc_pll_mode {
28 GPC_PLL_MODE_F = 0, 28 GPC_PLL_MODE_F = 0, /* fixed frequency mode a.k.a legacy mode */
29 GPC_PLL_MODE_DVFS, 29 GPC_PLL_MODE_DVFS, /* DVFS mode a.k.a NA mode */
30}; 30};
31 31
32struct na_dvfs { 32struct na_dvfs {
@@ -62,6 +62,16 @@ struct pll_parms {
62 int coeff_slope, coeff_offs; /* coeff = slope * V + offs */ 62 int coeff_slope, coeff_offs; /* coeff = slope * V + offs */
63 int uvdet_slope, uvdet_offs; /* uV = slope * det + offs */ 63 int uvdet_slope, uvdet_offs; /* uV = slope * det + offs */
64 u32 vco_ctrl; 64 u32 vco_ctrl;
65 /*
66 * Timing parameters in us. Lock timeout is applied to locking in fixed
67 * frequency mode and to dynamic ramp in any mode; does not affect lock
68 * latency, since lock/ramp done status bit is polled. NA mode lock and
69 * and IDDQ exit delays set the time of the respective opertaions with
70 * no status polling.
71 */
72 u32 lock_timeout;
73 u32 na_lock_delay;
74 u32 iddq_exit_delay;
65}; 75};
66 76
67struct clk_gk20a { 77struct clk_gk20a {
@@ -70,7 +80,6 @@ struct clk_gk20a {
70 struct pll gpc_pll; 80 struct pll gpc_pll;
71 struct pll gpc_pll_last; 81 struct pll gpc_pll_last;
72 u32 pll_delay; /* default PLL settle time */ 82 u32 pll_delay; /* default PLL settle time */
73 u32 na_pll_delay; /* default PLL settle time in NA mode */
74 struct mutex clk_mutex; 83 struct mutex clk_mutex;
75 bool sw_ready; 84 bool sw_ready;
76 bool clk_hw_on; 85 bool clk_hw_on;