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