summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/therm_gk20a.c
diff options
context:
space:
mode:
authorTerje Bergstrom <tbergstrom@nvidia.com>2017-06-22 15:58:43 -0400
committermobile promotions <svcmobile_promotions@nvidia.com>2017-06-30 21:34:58 -0400
commit82c0c96290602b1baf296133c7f55ae1848e433a (patch)
tree1f32dc8571ce777c50984be1194c68ddeea73b38 /drivers/gpu/nvgpu/gk20a/therm_gk20a.c
parent3ffcadc8dd6152d4ce2677b4e5d8e043a3df58ac (diff)
gpu: nvgpu: Remove gk20a support
Remove gk20a support. Leave only gk20a code which is reused by other GPUs. JIRA NVGPU-38 Change-Id: I3d5f2bc9f71cd9f161e64436561a5eadd5786a3b Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com> Reviewed-on: https://git-master/r/1507927 GVS: Gerrit_Virtual_Submit
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/therm_gk20a.c')
-rw-r--r--drivers/gpu/nvgpu/gk20a/therm_gk20a.c58
1 files changed, 0 insertions, 58 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/therm_gk20a.c b/drivers/gpu/nvgpu/gk20a/therm_gk20a.c
index 00159fae..e2fedf21 100644
--- a/drivers/gpu/nvgpu/gk20a/therm_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/therm_gk20a.c
@@ -33,58 +33,6 @@ static int gk20a_init_therm_setup_sw(struct gk20a *g)
33 return 0; 33 return 0;
34} 34}
35 35
36static int gk20a_init_therm_setup_hw(struct gk20a *g)
37{
38 u32 v;
39
40 /* program NV_THERM registers */
41 gk20a_writel(g, therm_use_a_r(), therm_use_a_ext_therm_0_enable_f() |
42 therm_use_a_ext_therm_1_enable_f() |
43 therm_use_a_ext_therm_2_enable_f());
44 /* priority for EXT_THERM_0 event set to highest */
45 gk20a_writel(g, therm_evt_ext_therm_0_r(),
46 therm_evt_ext_therm_0_slow_factor_f(0x2) |
47 therm_evt_ext_therm_0_priority_f(3));
48 gk20a_writel(g, therm_evt_ext_therm_1_r(),
49 therm_evt_ext_therm_1_slow_factor_f(0x6) |
50 therm_evt_ext_therm_1_priority_f(2));
51 gk20a_writel(g, therm_evt_ext_therm_2_r(),
52 therm_evt_ext_therm_2_slow_factor_f(0xe) |
53 therm_evt_ext_therm_2_priority_f(1));
54
55
56 gk20a_writel(g, therm_grad_stepping_table_r(0),
57 therm_grad_stepping_table_slowdown_factor0_f(therm_grad_stepping_table_slowdown_factor0_fpdiv_by1p5_f()) |
58 therm_grad_stepping_table_slowdown_factor1_f(therm_grad_stepping_table_slowdown_factor0_fpdiv_by2_f()) |
59 therm_grad_stepping_table_slowdown_factor2_f(therm_grad_stepping_table_slowdown_factor0_fpdiv_by4_f()) |
60 therm_grad_stepping_table_slowdown_factor3_f(therm_grad_stepping_table_slowdown_factor0_fpdiv_by8_f()) |
61 therm_grad_stepping_table_slowdown_factor4_f(therm_grad_stepping_table_slowdown_factor0_fpdiv_by8_f()));
62 gk20a_writel(g, therm_grad_stepping_table_r(1),
63 therm_grad_stepping_table_slowdown_factor0_f(therm_grad_stepping_table_slowdown_factor0_fpdiv_by8_f()) |
64 therm_grad_stepping_table_slowdown_factor1_f(therm_grad_stepping_table_slowdown_factor0_fpdiv_by8_f()) |
65 therm_grad_stepping_table_slowdown_factor2_f(therm_grad_stepping_table_slowdown_factor0_fpdiv_by8_f()) |
66 therm_grad_stepping_table_slowdown_factor3_f(therm_grad_stepping_table_slowdown_factor0_fpdiv_by8_f()) |
67 therm_grad_stepping_table_slowdown_factor4_f(therm_grad_stepping_table_slowdown_factor0_fpdiv_by8_f()));
68
69 v = gk20a_readl(g, therm_clk_timing_r(0));
70 v |= therm_clk_timing_grad_slowdown_enabled_f();
71 gk20a_writel(g, therm_clk_timing_r(0), v);
72
73 v = gk20a_readl(g, therm_config2_r());
74 v |= therm_config2_grad_enable_f(1);
75 v |= therm_config2_slowdown_factor_extended_f(1);
76 gk20a_writel(g, therm_config2_r(), v);
77
78 gk20a_writel(g, therm_grad_stepping1_r(),
79 therm_grad_stepping1_pdiv_duration_f(32));
80
81 v = gk20a_readl(g, therm_grad_stepping0_r());
82 v |= therm_grad_stepping0_feature_enable_f();
83 gk20a_writel(g, therm_grad_stepping0_r(), v);
84
85 return 0;
86}
87
88int gk20a_init_therm_support(struct gk20a *g) 36int gk20a_init_therm_support(struct gk20a *g)
89{ 37{
90 u32 err; 38 u32 err;
@@ -153,9 +101,3 @@ int gk20a_elcg_init_idle_filters(struct gk20a *g)
153 gk20a_dbg_fn("done"); 101 gk20a_dbg_fn("done");
154 return 0; 102 return 0;
155} 103}
156
157void gk20a_init_therm_ops(struct gpu_ops *gops)
158{
159 gops->therm.init_therm_setup_hw = gk20a_init_therm_setup_hw;
160 gops->therm.elcg_init_idle_filters = gk20a_elcg_init_idle_filters;
161}