aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/intel_display.c
diff options
context:
space:
mode:
authorZhenyu Wang <zhenyuw@linux.intel.com>2009-09-28 23:01:23 -0400
committerEric Anholt <eric@anholt.net>2009-10-13 13:56:57 -0400
commitc03342fa6d4617a77cb867ee0ec71665d520eb69 (patch)
tree7a6553e5c9ac9ac62985aa5bcea051302552c81d /drivers/gpu/drm/i915/intel_display.c
parent181a5336d6cc836f05507410d66988c483ad0154 (diff)
drm/i915: disable powersave feature for Ironlake currently
Until we figure out the right setting for powersave features on Ironlake, disable it for now. Also disable watermark update, which has new registers for it on Ironlake too. Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com> Reviewed-by: Jesse Barnes <jbarnes@virtuousgeek.org> [anholt: Resolved against the Pineview FBC changes] Signed-off-by: Eric Anholt <eric@anholt.net>
Diffstat (limited to 'drivers/gpu/drm/i915/intel_display.c')
-rw-r--r--drivers/gpu/drm/i915/intel_display.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index 9efe11761be3..be7fada590d4 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -2586,6 +2586,9 @@ static void intel_update_watermarks(struct drm_device *dev)
2586 unsigned long planea_clock = 0, planeb_clock = 0, sr_clock = 0; 2586 unsigned long planea_clock = 0, planeb_clock = 0, sr_clock = 0;
2587 int enabled = 0, pixel_size = 0; 2587 int enabled = 0, pixel_size = 0;
2588 2588
2589 if (!dev_priv->display.update_wm)
2590 return;
2591
2589 /* Get the clock config from both planes */ 2592 /* Get the clock config from both planes */
2590 list_for_each_entry(crtc, &dev->mode_config.crtc_list, head) { 2593 list_for_each_entry(crtc, &dev->mode_config.crtc_list, head) {
2591 intel_crtc = to_intel_crtc(crtc); 2594 intel_crtc = to_intel_crtc(crtc);
@@ -4126,7 +4129,9 @@ void intel_init_clock_gating(struct drm_device *dev)
4126 * Disable clock gating reported to work incorrectly according to the 4129 * Disable clock gating reported to work incorrectly according to the
4127 * specs, but enable as much else as we can. 4130 * specs, but enable as much else as we can.
4128 */ 4131 */
4129 if (IS_G4X(dev)) { 4132 if (IS_IGDNG(dev)) {
4133 return;
4134 } else if (IS_G4X(dev)) {
4130 uint32_t dspclk_gate; 4135 uint32_t dspclk_gate;
4131 I915_WRITE(RENCLK_GATE_D1, 0); 4136 I915_WRITE(RENCLK_GATE_D1, 0);
4132 I915_WRITE(RENCLK_GATE_D2, VF_UNIT_CLOCK_GATE_DISABLE | 4137 I915_WRITE(RENCLK_GATE_D2, VF_UNIT_CLOCK_GATE_DISABLE |
@@ -4214,7 +4219,9 @@ static void intel_init_display(struct drm_device *dev)
4214 i830_get_display_clock_speed; 4219 i830_get_display_clock_speed;
4215 4220
4216 /* For FIFO watermark updates */ 4221 /* For FIFO watermark updates */
4217 if (IS_G4X(dev)) 4222 if (IS_IGDNG(dev))
4223 dev_priv->display.update_wm = NULL;
4224 else if (IS_G4X(dev))
4218 dev_priv->display.update_wm = g4x_update_wm; 4225 dev_priv->display.update_wm = g4x_update_wm;
4219 else if (IS_I965G(dev)) 4226 else if (IS_I965G(dev))
4220 dev_priv->display.update_wm = i965_update_wm; 4227 dev_priv->display.update_wm = i965_update_wm;