xf86-video-intel: 2 commits - src/i810_reg.h src/i830_driver.c src/i830_hdmi.c

Zhenyu Wang zhen at kemper.freedesktop.org
Mon Aug 11 00:24:54 PDT 2008


 src/i810_reg.h    |    2 ++
 src/i830_driver.c |    2 +-
 src/i830_hdmi.c   |    9 +++++++++
 3 files changed, 12 insertions(+), 1 deletion(-)

New commits:
commit d592eabc806b752053ade3c18e9dd8e0f39b45a3
Author: Zhenyu Wang <zhenyu.z.wang at intel.com>
Date:   Mon Aug 11 15:16:44 2008 +0800

    Fix possible spurious interrupts in hotplug detect on 4 series chip

diff --git a/src/i810_reg.h b/src/i810_reg.h
index 4b9ce9b..7739a1c 100644
--- a/src/i810_reg.h
+++ b/src/i810_reg.h
@@ -2822,4 +2822,6 @@ typedef enum {
 #define DPFC_STATUS2		0x3214
 #define DPFC_FENCE_YOFF		0x3218
 
+#define PEG_BAND_GAP_DATA	0x14d68
+
 #endif /* _I810_REG_H */
diff --git a/src/i830_hdmi.c b/src/i830_hdmi.c
index 58d1c49..d56eec9 100644
--- a/src/i830_hdmi.c
+++ b/src/i830_hdmi.c
@@ -140,6 +140,15 @@ i830_hdmi_detect(xf86OutputPtr output)
     I830Ptr pI830 = I830PTR(pScrn);
     uint32_t temp, bit;
 
+    /* For G4X, PEG_BAND_GAP_DATA 3:0 must first be written 0xd.
+     * Failure to do so will result in spurious interrupts being
+     * generated on the port when a cable is not attached.
+     */
+    if (IS_G4X(pI830)) {
+	temp = INREG(PEG_BAND_GAP_DATA);
+	OUTREG(PEG_BAND_GAP_DATA, (temp & ~0xf) | 0xd);
+    }
+
     temp = INREG(PORT_HOTPLUG_EN);
 
     OUTREG(PORT_HOTPLUG_EN,
commit d0018a96064ee0adfe87c2d50c341bf7d2e45eb0
Author: Zhenyu Wang <zhenyu.z.wang at intel.com>
Date:   Mon Aug 11 15:16:09 2008 +0800

    Disable display clock gating for 4 series chips

diff --git a/src/i830_driver.c b/src/i830_driver.c
index 8ea05af..35f7242 100644
--- a/src/i830_driver.c
+++ b/src/i830_driver.c
@@ -971,7 +971,7 @@ i830_init_clock_gating(ScrnInfoPtr pScrn)
 
     /* Disable clock gating reported to work incorrectly according to the specs.
      */
-    if (IS_GM45(pI830)) {
+    if (IS_GM45(pI830) || IS_G4X(pI830)) {
 	OUTREG(RENCLK_GATE_D1, 0);
 	OUTREG(RENCLK_GATE_D2, 0);
 	OUTREG(RAMCLK_GATE_D, 0);


More information about the xorg-commit mailing list