[10/93] drm/i915: disable hotplug detect before Ironlake CRT detect
[Posted February 20, 2010 by corbet]
From: |
| Greg KH <gregkh-AT-suse.de> |
To: |
| linux-kernel-AT-vger.kernel.org, stable-AT-kernel.org |
Subject: |
| [10/93] drm/i915: disable hotplug detect before Ironlake CRT detect |
Date: |
| Fri, 19 Feb 2010 08:29:03 -0800 |
Cc: |
| stable-review-AT-kernel.org, torvalds-AT-linux-foundation.org,
akpm-AT-linux-foundation.org, alan-AT-lxorguk.ukuu.org.uk,
Zhenyu Wang <zhenyuw-AT-linux.intel.com>,
Eric Anholt <eric-AT-anholt.net> |
2.6.32-stable review patch. If anyone has any objections, please let us know.
------------------
From: Zhenyu Wang <zhenyuw@linux.intel.com>
commit eceb784cec4dc0fcc2993d9ee4a7c0d111ada80a upstream.
This tries to fix CRT detect loop hang seen on some Ironlake form
factor, to clear up hotplug detect state before taking CRT detect
to make sure next hotplug detect cycle is consistent.
Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
Signed-off-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
drivers/gpu/drm/i915/intel_crt.c | 3 +++
1 file changed, 3 insertions(+)
--- a/drivers/gpu/drm/i915/intel_crt.c
+++ b/drivers/gpu/drm/i915/intel_crt.c
@@ -185,6 +185,9 @@ static bool intel_igdng_crt_detect_hotpl
adpa = I915_READ(PCH_ADPA);
adpa &= ~ADPA_CRT_HOTPLUG_MASK;
+ /* disable HPD first */
+ I915_WRITE(PCH_ADPA, adpa);
+ (void)I915_READ(PCH_ADPA);
adpa |= (ADPA_CRT_HOTPLUG_PERIOD_128 |
ADPA_CRT_HOTPLUG_WARMUP_10MS |