summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/intel_pm.c
diff options
context:
space:
mode:
authorChris Wilson2015-04-27 14:41:22 +0200
committerDaniel Vetter2015-05-21 15:11:44 +0200
commit2e1b873072dfe3bbcc158a9c21acde1ab0d36c55 (patch)
tree543c77fb2c4f34ca5134223a00d6feccbb430770 /drivers/gpu/drm/i915/intel_pm.c
parentdrm/i915: Limit mmio flip RPS boosts (diff)
downloadkernel-qcow2-linux-2e1b873072dfe3bbcc158a9c21acde1ab0d36c55.tar.gz
kernel-qcow2-linux-2e1b873072dfe3bbcc158a9c21acde1ab0d36c55.tar.xz
kernel-qcow2-linux-2e1b873072dfe3bbcc158a9c21acde1ab0d36c55.zip
drm/i915: Convert RPS tracking to a intel_rps_client struct
Now that we have internal clients, rather than faking a whole drm_i915_file_private just for tracking RPS boosts, create a new struct intel_rps_client and pass it along when waiting. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> [danvet: s/rq/req/] 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.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
index 48e86255b7c8..b676fe81c563 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
@@ -4150,7 +4150,7 @@ void gen6_rps_idle(struct drm_i915_private *dev_priv)
}
void gen6_rps_boost(struct drm_i915_private *dev_priv,
- struct drm_i915_file_private *file_priv)
+ struct intel_rps_client *rps)
{
u32 val;
@@ -4159,13 +4159,13 @@ void gen6_rps_boost(struct drm_i915_private *dev_priv,
if (dev_priv->rps.enabled &&
dev_priv->mm.busy &&
dev_priv->rps.cur_freq < val &&
- (file_priv == NULL || list_empty(&file_priv->rps_boost))) {
+ (rps == NULL || list_empty(&rps->link))) {
intel_set_rps(dev_priv->dev, val);
dev_priv->rps.last_adj = 0;
- if (file_priv != NULL) {
- list_add(&file_priv->rps_boost, &dev_priv->rps.clients);
- file_priv->rps_boosts++;
+ if (rps != NULL) {
+ list_add(&rps->link, &dev_priv->rps.clients);
+ rps->boosts++;
} else
dev_priv->rps.boosts++;
}
@@ -6884,8 +6884,8 @@ void intel_pm_setup(struct drm_device *dev)
INIT_DELAYED_WORK(&dev_priv->rps.delayed_resume_work,
intel_gen6_powersave_work);
INIT_LIST_HEAD(&dev_priv->rps.clients);
- INIT_LIST_HEAD(&dev_priv->rps.semaphores.rps_boost);
- INIT_LIST_HEAD(&dev_priv->rps.mmioflips.rps_boost);
+ INIT_LIST_HEAD(&dev_priv->rps.semaphores.link);
+ INIT_LIST_HEAD(&dev_priv->rps.mmioflips.link);
dev_priv->pm.suspended = false;
}