|
|
7c5e45e |
From 666a130a1a9046994d8a3c5c3ff62316ed980ba6 Mon Sep 17 00:00:00 2001
|
|
|
7c5e45e |
From: Eugeni Dodonov <eugeni.dodonov@intel.com>
|
|
|
7c5e45e |
Date: Fri, 23 Mar 2012 11:57:19 -0300
|
|
|
7c5e45e |
Subject: [PATCH 2/2] drm/i915: enable plain RC6 on Sandy Bridge by default
|
|
|
7c5e45e |
|
|
|
7c5e45e |
This is yet another chapter in the ongoing saga of bringing RC6 to Sandy
|
|
|
7c5e45e |
Bridge machines by default.
|
|
|
7c5e45e |
|
|
|
7c5e45e |
Now that we have discovered that RC6 issues are triggered by RC6+ state,
|
|
|
7c5e45e |
let's try to disable it by default. Plain RC6 is the one responsible for
|
|
|
7c5e45e |
most energy savings, and so far it haven't given any problems - at least,
|
|
|
7c5e45e |
none we are aware of.
|
|
|
7c5e45e |
|
|
|
7c5e45e |
So with this, when i915_enable_rc6=-1 (e.g., the default value), we'll
|
|
|
7c5e45e |
attempt to enable plain RC6 only on SNB. For Ivy Bridge, the behavior
|
|
|
7c5e45e |
stays the same as always - we enable both RC6 and deep RC6.
|
|
|
7c5e45e |
|
|
|
7c5e45e |
Note that while this exact patch does not has explicit tested-by's, the
|
|
|
7c5e45e |
equivalent settings were fixed in 3.3 kernel by a smaller patch. And it
|
|
|
7c5e45e |
has also received considerable testing through Canonical RC6 task-force
|
|
|
7c5e45e |
testing at https://wiki.ubuntu.com/Kernel/PowerManagementRC6. Up to date,
|
|
|
7c5e45e |
it looks like all the known issues are gone.
|
|
|
7c5e45e |
|
|
|
7c5e45e |
v2: improve description and reference a couple of open bugs related to
|
|
|
7c5e45e |
RC6 which seem to be fixed with this change.
|
|
|
7c5e45e |
|
|
|
7c5e45e |
References: https://bugs.freedesktop.org/show_bug.cgi?id=41682
|
|
|
7c5e45e |
References: https://bugs.freedesktop.org/show_bug.cgi?id=38567
|
|
|
7c5e45e |
References: https://bugs.freedesktop.org/show_bug.cgi?id=44867
|
|
|
7c5e45e |
Acked-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
|
7c5e45e |
Signed-off-by: Eugeni Dodonov <eugeni.dodonov@intel.com>
|
|
|
7c5e45e |
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
|
|
|
7c5e45e |
---
|
|
|
7c5e45e |
drivers/gpu/drm/i915/intel_display.c | 8 ++++----
|
|
|
7c5e45e |
1 file changed, 4 insertions(+), 4 deletions(-)
|
|
|
7c5e45e |
|
|
|
7c5e45e |
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
|
|
|
7c5e45e |
index 1430f09..0fad1b3 100644
|
|
|
7c5e45e |
--- a/drivers/gpu/drm/i915/intel_display.c
|
|
|
7c5e45e |
+++ b/drivers/gpu/drm/i915/intel_display.c
|
|
|
7c5e45e |
@@ -8150,11 +8150,11 @@ static int intel_enable_rc6(struct drm_device *dev)
|
|
|
7c5e45e |
* Disable rc6 on Sandybridge
|
|
|
7c5e45e |
*/
|
|
|
7c5e45e |
if (INTEL_INFO(dev)->gen == 6) {
|
|
|
7c5e45e |
- DRM_DEBUG_DRIVER("Sandybridge: RC6 disabled\n");
|
|
|
7c5e45e |
- return 0;
|
|
|
7c5e45e |
+ DRM_DEBUG_DRIVER("Sandybridge: deep RC6 disabled\n");
|
|
|
7c5e45e |
+ return INTEL_RC6_ENABLE;
|
|
|
7c5e45e |
}
|
|
|
7c5e45e |
- DRM_DEBUG_DRIVER("RC6 enabled\n");
|
|
|
7c5e45e |
- return 1;
|
|
|
7c5e45e |
+ DRM_DEBUG_DRIVER("RC6 and deep RC6 enabled\n");
|
|
|
7c5e45e |
+ return (INTEL_RC6_ENABLE | INTEL_RC6p_ENABLE);
|
|
|
7c5e45e |
}
|
|
|
7c5e45e |
|
|
|
7c5e45e |
void gen6_enable_rps(struct drm_i915_private *dev_priv)
|
|
|
7c5e45e |
--
|
|
|
7c5e45e |
1.7.9.3
|
|
|
7c5e45e |
|