xf86-video-intel: Branch 'xf86-video-intel-2.3-branch' - 4 commits - configure.ac src/i830_lvds.c src/i830_video.c
Zhenyu Wang
zhen at kemper.freedesktop.org
Wed May 14 00:06:41 PDT 2008
configure.ac | 2 +-
src/i830_lvds.c | 2 +-
src/i830_video.c | 20 +++++++++++++++++---
3 files changed, 19 insertions(+), 5 deletions(-)
New commits:
commit 730259ed6446f73d9aa0318688b0795641bea076
Author: Rémi Cardona <remi at gentoo.org>
Date: Wed May 14 14:52:37 2008 +0800
Add glproto to DRI dependencies
(cherry picked from commit e9532f3abf1e0b62b2569d4aae60a5a63add571f)
diff --git a/configure.ac b/configure.ac
index f8a3824..94562dd 100644
--- a/configure.ac
+++ b/configure.ac
@@ -197,7 +197,7 @@ fi
AM_CONDITIONAL(DRI, test x$DRI = xyes)
if test "$DRI" = yes; then
- PKG_CHECK_MODULES(DRI, [libdrm xf86driproto])
+ PKG_CHECK_MODULES(DRI, [libdrm xf86driproto glproto])
AC_DEFINE(XF86DRI,1,[Enable DRI driver support])
AC_DEFINE(XF86DRI_DEVEL,1,[Enable developmental DRI driver support])
PKG_CHECK_MODULES(DRI_MM, [libdrm >= 2.3.1],[DRI_MM=yes], [DRI_MM=no])
commit f419f56ec8715e980aeb673bf4afd7649580d53c
Author: Jesse Barnes <jbarnes at nietzche.virtuousgeek.org>
Date: Mon May 12 10:58:24 2008 -0700
Panel fitting: fix letterbox modes
In full_aspect mode, we try to preserve the aspect ratio by adding
either top & bottom or left & right borders. In the letterbox case (top
& bottom borders) we were miscalculating the top border which led to
programming a bad mode. Fix the calculation and bug #15559.
(cherry picked from commit 5103e5a39a4869a714b8a59da8bf51ecc8c65e4f)
diff --git a/src/i830_lvds.c b/src/i830_lvds.c
index 48402df..899c6cb 100644
--- a/src/i830_lvds.c
+++ b/src/i830_lvds.c
@@ -671,7 +671,7 @@ i830_lvds_mode_fixup(xf86OutputPtr output, DisplayModePtr mode,
/* Letterbox will have top/bottom borders */
top_border = (dev_priv->panel_fixed_mode->VDisplay -
- mode->VDisplay) / 2;
+ scaled_height) / 2;
bottom_border = top_border;
if (mode->VDisplay & 1)
bottom_border++;
commit 9bb3ac06ed3d1a3456217d478d556b0abf05b585
Author: Keith Packard <keithp at keithp.com>
Date: Sun Apr 13 21:37:49 2008 -0700
Only use FOURCC_XVMC when INTEL_XVMC is defined
The XVMC code uses a magic FOURCC code to signal frame updates, but that
code is only defined when the XVMC code is used.
(cherry picked from commit 18ef4158e5574bfc6621b268821532f13e261d13)
diff --git a/src/i830_video.c b/src/i830_video.c
index 5d6c209..91e0e00 100644
--- a/src/i830_video.c
+++ b/src/i830_video.c
@@ -2119,7 +2119,9 @@ i830_display_video(ScrnInfoPtr pScrn, xf86CrtcPtr crtc,
switch (id) {
case FOURCC_YV12:
case FOURCC_I420:
+#ifdef INTEL_XVMC
case FOURCC_XVMC:
+#endif
OVERLAY_DEBUG("YUV420\n");
#if 0
/* set UV vertical phase to -0.25 */
@@ -2376,7 +2378,9 @@ I830PutImage(ScrnInfoPtr pScrn,
switch (destId) {
case FOURCC_YV12:
case FOURCC_I420:
+#ifdef INTEL_XVMC
case FOURCC_XVMC:
+#endif
if (pPriv->rotation & (RR_Rotate_90 | RR_Rotate_270)) {
dstPitch = ((height / 2) + pitchAlignMask) & ~pitchAlignMask;
size = dstPitch * width * 3;
@@ -2489,8 +2493,10 @@ I830PutImage(ScrnInfoPtr pScrn,
I830CopyPackedData(pScrn, pPriv, buf, srcPitch, dstPitch, top, left,
nlines, npixels);
break;
+#ifdef INTEL_XVMC
case FOURCC_XVMC:
break;
+#endif
default:
break;
}
commit 2aada39e1a2517c07c9ae87722341b6150f75b7d
Author: Keith Packard <keithp at keithp.com>
Date: Sat Apr 12 16:39:00 2008 -0700
Skip copying on FOURCC_XVMC surfaces
(cherry picked from commit 6366e4de540c4713cbc8402c89516464bbdc35b9)
diff --git a/src/i830_video.c b/src/i830_video.c
index 67fe291..5d6c209 100644
--- a/src/i830_video.c
+++ b/src/i830_video.c
@@ -2119,6 +2119,7 @@ i830_display_video(ScrnInfoPtr pScrn, xf86CrtcPtr crtc,
switch (id) {
case FOURCC_YV12:
case FOURCC_I420:
+ case FOURCC_XVMC:
OVERLAY_DEBUG("YUV420\n");
#if 0
/* set UV vertical phase to -0.25 */
@@ -2133,7 +2134,6 @@ i830_display_video(ScrnInfoPtr pScrn, xf86CrtcPtr crtc,
break;
case FOURCC_UYVY:
case FOURCC_YUY2:
- default:
OVERLAY_DEBUG("YUV422\n");
overlay->OSTRIDE = dstPitch;
OCMD &= ~SOURCE_FORMAT;
@@ -2376,6 +2376,7 @@ I830PutImage(ScrnInfoPtr pScrn,
switch (destId) {
case FOURCC_YV12:
case FOURCC_I420:
+ case FOURCC_XVMC:
if (pPriv->rotation & (RR_Rotate_90 | RR_Rotate_270)) {
dstPitch = ((height / 2) + pitchAlignMask) & ~pitchAlignMask;
size = dstPitch * width * 3;
@@ -2386,7 +2387,7 @@ I830PutImage(ScrnInfoPtr pScrn,
break;
case FOURCC_UYVY:
case FOURCC_YUY2:
- default:
+
if (pPriv->rotation & (RR_Rotate_90 | RR_Rotate_270)) {
dstPitch = ((height << 1) + pitchAlignMask) & ~pitchAlignMask;
size = dstPitch * width;
@@ -2395,6 +2396,10 @@ I830PutImage(ScrnInfoPtr pScrn,
size = dstPitch * height;
}
break;
+ default:
+ dstPitch = 0;
+ size = 0;
+ break;
}
#if 0
ErrorF("srcPitch: %d, dstPitch: %d, size: %d\n", srcPitch, dstPitch, size);
@@ -2480,11 +2485,14 @@ I830PutImage(ScrnInfoPtr pScrn,
break;
case FOURCC_UYVY:
case FOURCC_YUY2:
- default:
nlines = ((y2 + 0xffff) >> 16) - top;
I830CopyPackedData(pScrn, pPriv, buf, srcPitch, dstPitch, top, left,
nlines, npixels);
break;
+ case FOURCC_XVMC:
+ break;
+ default:
+ break;
}
if (pDraw->type == DRAWABLE_WINDOW) {
More information about the xorg-commit
mailing list