xf86-video-intel: Branch '2.7' - 3 commits - src/i810_reg.h src/i830_quirks.c src/i830_video.c

Carl Worth cworth at kemper.freedesktop.org
Tue Apr 7 12:44:30 PDT 2009


 src/i810_reg.h    |    2 +-
 src/i830_quirks.c |   14 ++++++++++++++
 src/i830_video.c  |    3 ++-
 3 files changed, 17 insertions(+), 2 deletions(-)

New commits:
commit 404fdcc5bc9dd32d39112d8a49a5617dbb886a40
Author: Shuang He <shuang.he at intel.com>
Date:   Tue Apr 7 12:31:07 2009 -0700

    Fix value for MI_WAIT_FOR_PIPEA_SCAN_LINE_WINDOW
    
    Since the change to scan-line based video sync, (rather than vblank-
    based), we've only been getting tear-free video on one of the two
    pipes. This fixes that bug by using the correct constant for waiting
    on PIPEA.
    (cherry picked from commit 0a0731c11d10392cdc55ecc04e4e3575c8b3fe57)

diff --git a/src/i810_reg.h b/src/i810_reg.h
index c964569..5211400 100644
--- a/src/i810_reg.h
+++ b/src/i810_reg.h
@@ -2442,7 +2442,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define MI_WAIT_FOR_PIPEB_VBLANK		(1<<7)
 #define MI_WAIT_FOR_PIPEB_SCAN_LINE_WINDOW	(1<<5)
 #define MI_WAIT_FOR_PIPEA_VBLANK		(1<<3)
-#define MI_WAIT_FOR_PIPEA_SCAN_LINE_WINDOW	(1<<2)
+#define MI_WAIT_FOR_PIPEA_SCAN_LINE_WINDOW	(1<<1)
 
 /* Set the scan line for MI_WAIT_FOR_PIPE?_SCAN_LINE_WINDOW */
 #define MI_LOAD_SCAN_LINES_INCL			(0x12<<23)
commit 7b74b77557aa4100017ef3f9d344fb4071ae8470
Author: Carl Worth <cworth at cworth.org>
Date:   Mon Apr 6 14:36:33 2009 -0700

    Don't clip video to CRTC in the case of textured video
    
    Since we're not limited by a single overlay plane on a single pipe,
    we want to not clip at all, (so that the correct video appears on
    both pipes).
    
    This fixes bug #20980 which shows a video spanning two pipes
    being rendered incorrectly.
    (cherry picked from commit 940c2aad4d174b6609bdc49f8c99a4bc37926516)

diff --git a/src/i830_video.c b/src/i830_video.c
index 13f3ab1..4ed3047 100644
--- a/src/i830_video.c
+++ b/src/i830_video.c
@@ -2146,7 +2146,8 @@ i830_clip_video_helper (ScrnInfoPtr pScrn,
 						   pPriv->desired_crtc,
 						   &crtc_box);
 	
-	if (crtc)
+	/* For textured video, we don't actually want to clip at all. */
+	if (crtc && !pPriv->textured)
 	{
 	    REGION_INIT (pScreen, &crtc_region_local, &crtc_box, 1);
 	    crtc_region = &crtc_region_local;
commit d8ce818c4e4ca0c348c16ead1b747165bce4bedb
Author: Zhenyu Wang <zhenyu.z.wang at intel.com>
Date:   Tue Apr 7 10:53:08 2009 +0800

    quirk LVDS on ibase MB890 855GM board
    
    fix bug #19529
    (cherry picked from commit 63b4b5efac936c674dedad8125a8dbac4f000908)

diff --git a/src/i830_quirks.c b/src/i830_quirks.c
index 8680baf..78292f7 100644
--- a/src/i830_quirks.c
+++ b/src/i830_quirks.c
@@ -236,6 +236,17 @@ static void quirk_msi_lvds_dmi (I830Ptr pI830)
    }
 }
 
+static void quirk_ibase_lvds (I830Ptr pI830)
+{
+   if (!i830_dmi_data[board_name]) {
+       ErrorF("Failed to load DMI info, iBase LVDS quirk not applied.\n");
+       return;
+   }
+   if (!strncmp(i830_dmi_data[board_name], "i855-W83627HF", 13)) {
+       pI830->quirk_flag |= QUIRK_IGNORE_LVDS;
+   }
+}
+
 static void quirk_ivch_dvob (I830Ptr pI830)
 {
 	pI830->quirk_flag |= QUIRK_IVCH_NEED_DVOB;
@@ -379,6 +390,9 @@ static i830_quirk i830_quirk_list[] = {
     /* #19239: Mirrus Centrino laptop */
     { PCI_CHIP_I915_GM, 0x1584, 0x9800, quirk_broken_acpi_lid },
 
+    /* #19529: iBase MB890 board */
+    { PCI_CHIP_I855_GM, 0x8086, 0x3582, quirk_ibase_lvds },
+
     { 0, 0, 0, NULL },
 };
 


More information about the xorg-commit mailing list