summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/i915_gem.c
diff options
context:
space:
mode:
authorBen Widawsky2013-04-05 22:12:43 +0200
committerDaniel Vetter2013-04-08 20:53:05 +0200
commit88a2b2a32d71aad6d8dcd843294b00a204faa66b (patch)
treeec91711acdc5dd1e233293bdd7f86af615ed4fa5 /drivers/gpu/drm/i915/i915_gem.c
parentdrm/i915: Don't touch South Display when PCH_NOP (diff)
downloadkernel-qcow2-linux-88a2b2a32d71aad6d8dcd843294b00a204faa66b.tar.gz
kernel-qcow2-linux-88a2b2a32d71aad6d8dcd843294b00a204faa66b.tar.xz
kernel-qcow2-linux-88a2b2a32d71aad6d8dcd843294b00a204faa66b.zip
drm/i915: Don't wait for PCH on reset
BIOS should be setting this, but in case it doesn't... v2: Define the bits we actually want to clear (Jesse) Make it an RMW op (Jesse) Signed-off-by: Ben Widawsky <ben@bwidawsk.net> Reviewed-by: Jesse Barnes <jbarnes@virtuousgeek.org> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm/i915/i915_gem.c')
-rw-r--r--drivers/gpu/drm/i915/i915_gem.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index 911bd40ef513..74c560150293 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -3992,6 +3992,12 @@ i915_gem_init_hw(struct drm_device *dev)
if (IS_HASWELL(dev) && (I915_READ(0x120010) == 1))
I915_WRITE(0x9008, I915_READ(0x9008) | 0xf0000);
+ if (HAS_PCH_NOP(dev)) {
+ u32 temp = I915_READ(GEN7_MSG_CTL);
+ temp &= ~(WAIT_FOR_PCH_FLR_ACK | WAIT_FOR_PCH_RESET_ACK);
+ I915_WRITE(GEN7_MSG_CTL, temp);
+ }
+
i915_gem_l3_remap(dev);
i915_gem_init_swizzling(dev);