drm/i915: don't access FW_BLC_SELF on 965G
Subsystems (2)
PATCH 1/1 drm/i915: don't access FW_BLC_SELF on 965G
The register offset for FW_BLC_SELF is a totally different set of bits on Broadwater (it's actually MI_RDRET_STATE), so don't treat it like FW_BLC_SELF on 965G chips.
Fixes bug https://bugs.freedesktop.org/show_bug.cgi?id=26874.
Tested-by Norman Yarvin <[email protected]>
Signed-off-by Jesse Barnes <[email protected]>
--- drivers/gpu/drm/i915/i915_debugfs.c | 2 +- drivers/gpu/drm/i915/intel_display.c | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-)
drivers/gpu/drm/i915/i915_debugfs.c +1 -1
@@ -620,7 +620,7 @@ static int i915_sr_status(struct seq_file *m, void *unused)drm_i915_private_t *dev_priv = dev->dev_private;bool sr_enabled = false; -if (IS_I965G (dev) ||IS_I945G (dev) ||IS_I945GM (dev)) +if (IS_I965GM (dev) ||IS_I945G (dev) ||IS_I945GM (dev)) sr_enabled =I915_READ (FW_BLC_SELF ) &FW_BLC_SELF_EN ;else if (IS_I915GM (dev)) sr_enabled =I915_READ (INSTPM ) &INSTPM_SELF_EN ;
drivers/gpu/drm/i915/intel_display.c +5 -3
@@ -2970,11 +2970,13 @@ static void i965_update_wm(struct drm_device *dev, int planea_clock,if (srwm <0 ) srwm =1 ; srwm &=0x3f ; -I915_WRITE (FW_BLC_SELF ,FW_BLC_SELF_EN ); +if (IS_I965GM (dev)) +I915_WRITE (FW_BLC_SELF ,FW_BLC_SELF_EN ); }else {/* Turn off self refresh if both pipes are enabled */ -I915_WRITE (FW_BLC_SELF ,I915_READ (FW_BLC_SELF ) - & ~FW_BLC_SELF_EN ); +if (IS_I965GM (dev)) +I915_WRITE (FW_BLC_SELF ,I915_READ (FW_BLC_SELF ) + & ~FW_BLC_SELF_EN ); } DRM_DEBUG_KMS("Setting FIFO watermarks - A: 8, B: 8, C: 8, SR %d\n",
Signature · 1 line
1.6.1.3
Eric Anholt
AppliedQuoted 9 lines · Jesse Barnes
The register offset for
FW_BLC_SELFis a totally different set of bits on Broadwater (it's actuallyMI_RDRET_STATE), so don't treat it likeFW_BLC_SELFon 965G chips.Fixes bug https://bugs.freedesktop.org/show_bug.cgi?id=26874.
Tested-by Norman Yarvin <[email protected]>Signed-off-by Jesse Barnes <[email protected]>
Applied to for-linus. Thanks!
_______________________________________________
Intel-gfx mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/intel-gfx