summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/gpu/nvgpu/gp10b/therm_gp10b.c15
1 files changed, 9 insertions, 6 deletions
diff --git a/drivers/gpu/nvgpu/gp10b/therm_gp10b.c b/drivers/gpu/nvgpu/gp10b/therm_gp10b.c
index 687593b0..5763b3b1 100644
--- a/drivers/gpu/nvgpu/gp10b/therm_gp10b.c
+++ b/drivers/gpu/nvgpu/gp10b/therm_gp10b.c
@@ -81,12 +81,15 @@ static int gp10b_init_therm_setup_hw(struct gk20a *g)
81static int gp10b_update_therm_gate_ctrl(struct gk20a *g) 81static int gp10b_update_therm_gate_ctrl(struct gk20a *g)
82{ 82{
83 u32 gate_ctrl; 83 u32 gate_ctrl;
84 84 u32 engine_id;
85 gate_ctrl = gk20a_readl(g, therm_gate_ctrl_r(ENGINE_CE2_GK20A)); 85
86 gate_ctrl = set_field(gate_ctrl, 86 for (engine_id = 0; engine_id < ENGINE_INVAL_GK20A; engine_id++) {
87 therm_gate_ctrl_eng_delay_before_m(), 87 gate_ctrl = gk20a_readl(g, therm_gate_ctrl_r(engine_id));
88 therm_gate_ctrl_eng_delay_before_f(4)); 88 gate_ctrl = set_field(gate_ctrl,
89 gk20a_writel(g, therm_gate_ctrl_r(ENGINE_CE2_GK20A), gate_ctrl); 89 therm_gate_ctrl_eng_delay_before_m(),
90 therm_gate_ctrl_eng_delay_before_f(4));
91 gk20a_writel(g, therm_gate_ctrl_r(engine_id), gate_ctrl);
92 }
90 93
91 return 0; 94 return 0;
92} 95}