aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/intel_pm.c
diff options
context:
space:
mode:
authorDeepak S <deepak.s@linux.intel.com>2015-04-28 23:06:24 -0400
committerDaniel Vetter <daniel.vetter@ffwll.ch>2015-05-08 07:03:25 -0400
commit3ef62342bd854fff5d792d67fc6a8e66f26c862b (patch)
tree4cb9531ffc6b8006f8615178ff3116a767469488 /drivers/gpu/drm/i915/intel_pm.c
parent3126a660f352b3fe48125a8a0b4fdbf85935d8bf (diff)
drm/i915: Setup static bias for GPU
Based on the spec, Setting up static BIAS for GPU to improve the rps performace. v2: rename reg defn to match spec. (Ville) v3: Updated bias setting for chv (Deepak) Signed-off-by: Deepak S <deepak.s@linux.intel.com> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm/i915/intel_pm.c')
-rw-r--r--drivers/gpu/drm/i915/intel_pm.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
index a7516ed24eee..8812fffeac5e 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
@@ -5082,6 +5082,12 @@ static void cherryview_enable_rps(struct drm_device *dev)
5082 GEN6_RP_UP_BUSY_AVG | 5082 GEN6_RP_UP_BUSY_AVG |
5083 GEN6_RP_DOWN_IDLE_AVG); 5083 GEN6_RP_DOWN_IDLE_AVG);
5084 5084
5085 /* Setting Fixed Bias */
5086 val = VLV_OVERRIDE_EN |
5087 VLV_SOC_TDP_EN |
5088 CHV_BIAS_CPU_50_SOC_50;
5089 vlv_punit_write(dev_priv, VLV_TURBO_SOC_OVERRIDE, val);
5090
5085 val = vlv_punit_read(dev_priv, PUNIT_REG_GPU_FREQ_STS); 5091 val = vlv_punit_read(dev_priv, PUNIT_REG_GPU_FREQ_STS);
5086 5092
5087 /* RPS code assumes GPLL is used */ 5093 /* RPS code assumes GPLL is used */
@@ -5166,6 +5172,12 @@ static void valleyview_enable_rps(struct drm_device *dev)
5166 5172
5167 I915_WRITE(GEN6_RC_CONTROL, rc6_mode); 5173 I915_WRITE(GEN6_RC_CONTROL, rc6_mode);
5168 5174
5175 /* Setting Fixed Bias */
5176 val = VLV_OVERRIDE_EN |
5177 VLV_SOC_TDP_EN |
5178 VLV_BIAS_CPU_125_SOC_875;
5179 vlv_punit_write(dev_priv, VLV_TURBO_SOC_OVERRIDE, val);
5180
5169 val = vlv_punit_read(dev_priv, PUNIT_REG_GPU_FREQ_STS); 5181 val = vlv_punit_read(dev_priv, PUNIT_REG_GPU_FREQ_STS);
5170 5182
5171 /* RPS code assumes GPLL is used */ 5183 /* RPS code assumes GPLL is used */