summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/intel_pm.c
diff options
context:
space:
mode:
authorVille Syrjälä2013-06-25 20:38:10 +0200
committerDaniel Vetter2013-07-01 11:14:50 +0200
commit6dc5848899a7ddbf1d02f104a97dde7ba0200693 (patch)
tree24f072e500a58783235502a09c571a2ce598e178 /drivers/gpu/drm/i915/intel_pm.c
parentdrm/i915: GEN6_RP_INTERRUPT_LIMITS doesn't seem to exist on VLV (diff)
downloadkernel-qcow2-linux-6dc5848899a7ddbf1d02f104a97dde7ba0200693.tar.gz
kernel-qcow2-linux-6dc5848899a7ddbf1d02f104a97dde7ba0200693.tar.xz
kernel-qcow2-linux-6dc5848899a7ddbf1d02f104a97dde7ba0200693.zip
drm/i915: Don't increase the GPU frequency from the delayed VLV rps timer
There's little point in increasing the GPU frequency from the delayed rps work on VLV. Now when the GPU is idle, the GPU frequency actually keeps dropping gradually until it hits the minimum, whereas previously it just ping-ponged constantly between RPe and RPe-1. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Jesse Barnes <jbarnes@virtuousgeek.org> 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.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
index ed929667c5ba..ccbdd83f5220 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
@@ -3461,7 +3461,8 @@ static void vlv_rps_timer_work(struct work_struct *work)
* min freq available.
*/
mutex_lock(&dev_priv->rps.hw_lock);
- valleyview_set_rps(dev_priv->dev, dev_priv->rps.rpe_delay);
+ if (dev_priv->rps.cur_delay > dev_priv->rps.rpe_delay)
+ valleyview_set_rps(dev_priv->dev, dev_priv->rps.rpe_delay);
mutex_unlock(&dev_priv->rps.hw_lock);
}