drm/i915: Enable RC6 on Ironlake.
authorZou Nan hai <nanhai.zou@intel.com>
Fri, 25 Jun 2010 05:40:22 +0000 (13:40 +0800)
committerEric Anholt <eric@anholt.net>
Mon, 9 Aug 2010 21:13:39 +0000 (14:13 -0700)
RC6 allows the GPU to enter a lower power state when the GPU is idle.

Signed-off-by: Zou Nan hai <nanhai.zou@intel.com>
[anholt: Fixed the !renderctx error path to actually not enable RC6.]
Signed-off-by: Eric Anholt <eric@anholt.net>
drivers/gpu/drm/i915/intel_display.c

index 4668e9bf67d81ba932e9ebdafab0b9ce754704f6..149c18b7c3751d56215e38a3864dafa3c9aee3fe 100644 (file)
@@ -5753,7 +5753,8 @@ void intel_init_clock_gating(struct drm_device *dev)
                                   ILK_DPFC_DIS2 |
                                   ILK_CLK_FBC);
                }
-               return;
+               if (IS_GEN6(dev))
+                       return;
        } else if (IS_G4X(dev)) {
                uint32_t dspclk_gate;
                I915_WRITE(RENCLK_GATE_D1, 0);
@@ -5814,9 +5815,11 @@ void intel_init_clock_gating(struct drm_device *dev)
                                OUT_RING(MI_FLUSH);
                                ADVANCE_LP_RING();
                        }
-               } else
+               } else {
                        DRM_DEBUG_KMS("Failed to allocate render context."
-                                      "Disable RC6\n");
+                                     "Disable RC6\n");
+                       return;
+               }
        }
 
        if (I915_HAS_RC6(dev) && drm_core_check_feature(dev, DRIVER_MODESET)) {