diff options
author | Jani Nikula <[email protected]> | 2014-05-09 14:52:34 +0300 |
---|---|---|
committer | Jani Nikula <[email protected]> | 2014-05-09 21:47:26 +0300 |
commit | 05adaf1f101f25f40f12c29403e6488f0e45f6b6 (patch) | |
tree | e3e8d6587477c74107f1ecbdab5850c59505df62 | |
parent | e4c610fe051579ba0a1fadf339905b0231c6ef94 (diff) |
drm/i915/vlv: reset VLV media force wake request register
Media force wake get hangs the machine when the system is booted without
displays attached. The assumption is that (at least some versions of)
the firmware has skipped some initialization in that case.
Empirical evidence suggests we need to reset the media force wake
request register in addition to the render one to avoid hangs.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=75895
Reported-by: Imre Deak <[email protected]>
Reported-by: Darren Hart <[email protected]>
Tested-by: Darren Hart <[email protected]>
Reviewed-by: Mika Kuoppala <[email protected]>
Cc: [email protected]
Signed-off-by: Jani Nikula <[email protected]>
-rw-r--r-- | drivers/gpu/drm/i915/intel_uncore.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/intel_uncore.c b/drivers/gpu/drm/i915/intel_uncore.c index f729dc71d5be..d0c75779d3f6 100644 --- a/drivers/gpu/drm/i915/intel_uncore.c +++ b/drivers/gpu/drm/i915/intel_uncore.c @@ -185,6 +185,8 @@ static void vlv_force_wake_reset(struct drm_i915_private *dev_priv) { __raw_i915_write32(dev_priv, FORCEWAKE_VLV, _MASKED_BIT_DISABLE(0xffff)); + __raw_i915_write32(dev_priv, FORCEWAKE_MEDIA_VLV, + _MASKED_BIT_DISABLE(0xffff)); /* something from same cacheline, but !FORCEWAKE_VLV */ __raw_posting_read(dev_priv, FORCEWAKE_ACK_VLV); } |