diff options
author | Zhao Yakui <yakui.zhao@intel.com> | 2010-06-12 02:32:24 -0400 |
---|---|---|
committer | Eric Anholt <eric@anholt.net> | 2010-08-01 22:03:43 -0400 |
commit | 1b07e04e9cd443fc333f4036d129ba7c08d340c4 (patch) | |
tree | d516dd5e3894b1268be266b9824e8ee74c101726 /drivers/gpu/drm/i915/intel_display.c | |
parent | fa143215b11056b878875f87edac78a1cfb9d1c0 (diff) |
drm/i915: Fix fifo size for self-refresh watermark on 965G
The total self-refresh fifo entry size for display plane is 512
instead of 128 for 965G. Also fix WM value mask for 965G.
About 1.0W power can be saved on one T61 laptop after the self-refresh
watermark is configured correctly.
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Zhenyu wang <zhenyuw@linux.intel.com>
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.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index 274d78d023a1..09e3f02f529e 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c | |||
@@ -2970,10 +2970,10 @@ static void i965_update_wm(struct drm_device *dev, int planea_clock, | |||
2970 | pixel_size * sr_hdisplay; | 2970 | pixel_size * sr_hdisplay; |
2971 | sr_entries = roundup(sr_entries / I915_FIFO_LINE_SIZE, 1); | 2971 | sr_entries = roundup(sr_entries / I915_FIFO_LINE_SIZE, 1); |
2972 | DRM_DEBUG("self-refresh entries: %d\n", sr_entries); | 2972 | DRM_DEBUG("self-refresh entries: %d\n", sr_entries); |
2973 | srwm = I945_FIFO_SIZE - sr_entries; | 2973 | srwm = I965_FIFO_SIZE - sr_entries; |
2974 | if (srwm < 0) | 2974 | if (srwm < 0) |
2975 | srwm = 1; | 2975 | srwm = 1; |
2976 | srwm &= 0x3f; | 2976 | srwm &= 0x1ff; |
2977 | if (IS_I965GM(dev)) | 2977 | if (IS_I965GM(dev)) |
2978 | I915_WRITE(FW_BLC_SELF, FW_BLC_SELF_EN); | 2978 | I915_WRITE(FW_BLC_SELF, FW_BLC_SELF_EN); |
2979 | } else { | 2979 | } else { |