xf86-video-intel: 2 commits - src/i830_driver.c src/i830_quirks.c

Zhenyu Wang zhen at kemper.freedesktop.org
Mon Jul 21 20:15:30 PDT 2008


 src/i830_driver.c |    8 ++++++--
 src/i830_quirks.c |    3 ++-
 2 files changed, 8 insertions(+), 3 deletions(-)

New commits:
commit 7defa4f1f0eba82f39e74f96d2ad7ed2481b537e
Author: Zhenyu Wang <zhenyu.z.wang at intel.com>
Date:   Tue Jul 22 10:51:01 2008 +0800

    Check underrun on enabled pipe

diff --git a/src/i830_driver.c b/src/i830_driver.c
index 84aedba..390b5e7 100644
--- a/src/i830_driver.c
+++ b/src/i830_driver.c
@@ -2487,6 +2487,7 @@ I830BlockHandler(int i,
     ScreenPtr pScreen = screenInfo.screens[i];
     ScrnInfoPtr pScrn = xf86Screens[i];
     I830Ptr pI830 = I830PTR(pScrn);
+    xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(pScrn);
 
     pScreen->BlockHandler = pI830->BlockHandler;
 
@@ -2511,11 +2512,14 @@ I830BlockHandler(int i,
      * (except for mode setting, where it may occur naturally).
      * Check & ack the condition.
      */
-    if (INREG(PIPEASTAT) & FIFO_UNDERRUN) {
+    if (xf86_config->crtc[0]->enabled &&
+	    (INREG(PIPEASTAT) & FIFO_UNDERRUN)) {
 	    xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "underrun on pipe A!\n");
 	    OUTREG(PIPEASTAT, INREG(PIPEASTAT) | FIFO_UNDERRUN);
     }
-    if (INREG(PIPEBSTAT) & FIFO_UNDERRUN) {
+    if (xf86_config->num_crtc > 1 &&
+	    xf86_config->crtc[1]->enabled &&
+	    (INREG(PIPEBSTAT) & FIFO_UNDERRUN)) {
 	    xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "underrun on pipe B!\n");
 	    OUTREG(PIPEBSTAT, INREG(PIPEBSTAT) | FIFO_UNDERRUN);
     }
commit b7765b0837af4cc80f1257ba04495140ef5d536e
Author: Zhenyu Wang <zhenyu.z.wang at intel.com>
Date:   Tue Jul 22 09:51:54 2008 +0800

    Thinkpad R60e TV quirk via DMI info

diff --git a/src/i830_quirks.c b/src/i830_quirks.c
index 164a70c..5ae2898 100644
--- a/src/i830_quirks.c
+++ b/src/i830_quirks.c
@@ -203,7 +203,8 @@ static void quirk_lenovo_tv_dmi (I830Ptr pI830)
 	ErrorF("Failed to load DMI info, X60 TV quirk not applied.\n");
 	return;
     }
-    if (!strncmp(i830_dmi_data[bios_version], "7B", 2))
+    if (!strncmp(i830_dmi_data[bios_version], "7B", 2) || /* X60, X60s */
+	    !strncmp(i830_dmi_data[bios_version], "7E", 2)) /* R60e */
 	pI830->quirk_flag |= QUIRK_IGNORE_TV;
 }
 


More information about the xorg-commit mailing list