summaryrefslogtreecommitdiff
path: root/libre/linux-libre/fix-i915.patch
diff options
context:
space:
mode:
authorroot <root@rshg047.dnsready.net>2011-07-24 23:18:01 +0000
committerroot <root@rshg047.dnsready.net>2011-07-24 23:18:01 +0000
commit43983783a3e8bf61896eb93a2858a14bbaf3a53b (patch)
treec3085b8900db730e945868819ed112708a661653 /libre/linux-libre/fix-i915.patch
parent0e8166d926f929f470d01d5bc8c8823e094742da (diff)
Sun Jul 24 23:18:00 UTC 2011
Diffstat (limited to 'libre/linux-libre/fix-i915.patch')
-rw-r--r--libre/linux-libre/fix-i915.patch27
1 files changed, 27 insertions, 0 deletions
diff --git a/libre/linux-libre/fix-i915.patch b/libre/linux-libre/fix-i915.patch
new file mode 100644
index 000000000..96654047b
--- /dev/null
+++ b/libre/linux-libre/fix-i915.patch
@@ -0,0 +1,27 @@
+Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
+Tested-by: Santi <santi@agolina.net>
+---
+ drivers/gpu/drm/i915/intel_tv.c | 9 +++++++++
+ 1 files changed, 9 insertions(+), 0 deletions(-)
+
+diff --git a/drivers/gpu/drm/i915/intel_tv.c b/drivers/gpu/drm/i915/intel_tv.c
+index dc83b7a..c8f67bf 100644
+--- a/drivers/gpu/drm/i915/intel_tv.c
++++ b/drivers/gpu/drm/i915/intel_tv.c
+@@ -1267,6 +1267,15 @@
+ DAC_B_0_7_V |
+ DAC_C_0_7_V);
+
++ /*
++ * The TV sense state should be cleared to zero on cantiga platform. Otherwise
++ * the TV is misdetected. This is hardware requirement.
++ */
++ if (IS_GM45(dev))
++ tv_dac &= ~(TVDAC_STATE_CHG_EN | TVDAC_A_SENSE_CTL |
++ TVDAC_B_SENSE_CTL | TVDAC_C_SENSE_CTL);
++
++
+ I915_WRITE(TV_CTL, tv_ctl);
+ I915_WRITE(TV_DAC, tv_dac);
+ POSTING_READ(TV_DAC);
+