diff options
author | 2008-08-11 09:23:01 +0000 | |
---|---|---|
committer | 2008-08-11 09:23:01 +0000 | |
commit | 865ea62f4b105d25a93c0465698e230bd0ad6bad (patch) | |
tree | 9ecfa48e0b8f0f951b351bf1b626bc98f7317346 /x11-drivers/xf86-video-i810 | |
parent | x11-drivers/xf86-video-i810: add patches from the upcoming 2.4.1 (diff) | |
download | gentoo-2-865ea62f4b105d25a93c0465698e230bd0ad6bad.tar.gz gentoo-2-865ea62f4b105d25a93c0465698e230bd0ad6bad.tar.bz2 gentoo-2-865ea62f4b105d25a93c0465698e230bd0ad6bad.zip |
x11-drivers/xf86-video-i810: clean up unused patches
(Portage version: 2.2_rc6/cvs/Linux 2.6.25-gentoo-r6 x86_64)
Diffstat (limited to 'x11-drivers/xf86-video-i810')
26 files changed, 33 insertions, 1664 deletions
diff --git a/x11-drivers/xf86-video-i810/ChangeLog b/x11-drivers/xf86-video-i810/ChangeLog index 850fa1c887d5..9dc6fb290562 100644 --- a/x11-drivers/xf86-video-i810/ChangeLog +++ b/x11-drivers/xf86-video-i810/ChangeLog @@ -1,6 +1,38 @@ # ChangeLog for x11-drivers/xf86-video-i810 # Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/x11-drivers/xf86-video-i810/ChangeLog,v 1.98 2008/08/11 09:17:51 remi Exp $ +# $Header: /var/cvsroot/gentoo-x86/x11-drivers/xf86-video-i810/ChangeLog,v 1.99 2008/08/11 09:23:00 remi Exp $ + + 11 Aug 2008; Rémi Cardona <remi@gentoo.org> + -files/2.3.1/0001-Skip-copying-on-FOURCC_XVMC-surfaces.patch, + -files/2.3.1/0002-Only-use-FOURCC_XVMC-when-INTEL_XVMC-is-defined.patch, + -files/2.3.1/0003-Panel-fitting-fix-letterbox-modes.patch, + -files/2.3.1/0004-Add-glproto-to-DRI-dependencies.patch, + -files/2.3.1/0005-Revert-Add-FIFO-watermark-regs-to-register-dumper.patch, + -files/2.3.1/0006-Fix-typo-in-xvmc-block-destroy.patch, + -files/2.3.1/0007-Define-DEFFILEMODE-for-OS-es-that-don-t-have-it.patch, + -files/2.3.1/0008-Disable-a-bunch-of-clock-gating-disables-on-IGD_GM.patch + , -files/2.3.1/0009-Fixup-power-saving-registers.patch, + -files/2.3.1/0010-xvmc-remove-unused-dri-drawable.patch, + -files/2.3.1/0011-xvmc-a-little-cleanup.patch, + -files/2.3.1/0012-Set-SDVO-sync-polarity-to-default-on-965.patch, + -files/2.3.1/0013-Just-remove-the-mprotect-kludge.patch, + -files/2.3.1/0014-Replace-a-couple-of-wait-for-ring-idles-with-a-singl.pat + ch, + -files/2.3.1/0015-Remove-duplicated-i830_stop_ring-SetHWOperatingSta.patch + , + -files/2.3.1/0016-Remove-gratuitous-wait_ring_idle-after-I830Sync.-Sy.patc + h, + -files/2.3.1/0017-Move-BIOS-scratch-register-setup-to-EnterVT-instead.patc + h, + -files/2.3.1/0018-Initialize-clock-gating-from-EnterVT-and-save-restor.pat + ch, -files/2.3.1/0019-Remove-SVG_WORK_CONTROL-init.patch, + -files/2.3.1/0020-Move-debug-clock-printout-from-ErrorF-to-X_INFO.patch, + -files/2.3.1/0021-Fix-TV-out-connection-type-detection.patch, + -files/2.3.1/0022-Fix-TV-programming-add-vblank-wait-after-TV_CTL-wr.patch + , -files/2.3.1/0023-Two-more-Dell-quirks.patch, + -files/2.3.1/0024-Set-up-restore-PWRCTXA-from-enter-leavevt-not-server.pat + ch, -files/2.3.1/0025-Fix-compiler-warning-when-disable-xvmc-config.patch: + clean up unused patches *xf86-video-i810-2.4.0-r1 (11 Aug 2008) diff --git a/x11-drivers/xf86-video-i810/files/2.3.1/0001-Skip-copying-on-FOURCC_XVMC-surfaces.patch b/x11-drivers/xf86-video-i810/files/2.3.1/0001-Skip-copying-on-FOURCC_XVMC-surfaces.patch deleted file mode 100644 index a3f39f1f52ce..000000000000 --- a/x11-drivers/xf86-video-i810/files/2.3.1/0001-Skip-copying-on-FOURCC_XVMC-surfaces.patch +++ /dev/null @@ -1,74 +0,0 @@ -From 2aada39e1a2517c07c9ae87722341b6150f75b7d Mon Sep 17 00:00:00 2001 -From: Keith Packard <keithp@keithp.com> -Date: Sat, 12 Apr 2008 16:39:00 -0700 -Subject: [PATCH] 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) { --- -1.5.5.3 - diff --git a/x11-drivers/xf86-video-i810/files/2.3.1/0002-Only-use-FOURCC_XVMC-when-INTEL_XVMC-is-defined.patch b/x11-drivers/xf86-video-i810/files/2.3.1/0002-Only-use-FOURCC_XVMC-when-INTEL_XVMC-is-defined.patch deleted file mode 100644 index 3ca822394270..000000000000 --- a/x11-drivers/xf86-video-i810/files/2.3.1/0002-Only-use-FOURCC_XVMC-when-INTEL_XVMC-is-defined.patch +++ /dev/null @@ -1,47 +0,0 @@ -From 9bb3ac06ed3d1a3456217d478d556b0abf05b585 Mon Sep 17 00:00:00 2001 -From: Keith Packard <keithp@keithp.com> -Date: Sun, 13 Apr 2008 21:37:49 -0700 -Subject: [PATCH] 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; - } --- -1.5.5.3 - diff --git a/x11-drivers/xf86-video-i810/files/2.3.1/0003-Panel-fitting-fix-letterbox-modes.patch b/x11-drivers/xf86-video-i810/files/2.3.1/0003-Panel-fitting-fix-letterbox-modes.patch deleted file mode 100644 index 43ef83e18d7e..000000000000 --- a/x11-drivers/xf86-video-i810/files/2.3.1/0003-Panel-fitting-fix-letterbox-modes.patch +++ /dev/null @@ -1,27 +0,0 @@ -From f419f56ec8715e980aeb673bf4afd7649580d53c Mon Sep 17 00:00:00 2001 -From: Jesse Barnes <jbarnes@nietzche.virtuousgeek.org> -Date: Mon, 12 May 2008 10:58:24 -0700 -Subject: [PATCH] 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++; --- -1.5.5.3 - diff --git a/x11-drivers/xf86-video-i810/files/2.3.1/0004-Add-glproto-to-DRI-dependencies.patch b/x11-drivers/xf86-video-i810/files/2.3.1/0004-Add-glproto-to-DRI-dependencies.patch deleted file mode 100644 index f4eeace49783..000000000000 --- a/x11-drivers/xf86-video-i810/files/2.3.1/0004-Add-glproto-to-DRI-dependencies.patch +++ /dev/null @@ -1,23 +0,0 @@ -From 730259ed6446f73d9aa0318688b0795641bea076 Mon Sep 17 00:00:00 2001 -From: =?utf-8?q?R=C3=A9mi=20Cardona?= <remi@gentoo.org> -Date: Wed, 14 May 2008 14:52:37 +0800 -Subject: [PATCH] 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]) --- -1.5.5.3 - diff --git a/x11-drivers/xf86-video-i810/files/2.3.1/0005-Revert-Add-FIFO-watermark-regs-to-register-dumper.patch b/x11-drivers/xf86-video-i810/files/2.3.1/0005-Revert-Add-FIFO-watermark-regs-to-register-dumper.patch deleted file mode 100644 index 13752309f30b..000000000000 --- a/x11-drivers/xf86-video-i810/files/2.3.1/0005-Revert-Add-FIFO-watermark-regs-to-register-dumper.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 288ef6585150f2a58d4c1723efae1a5a7a41772a Mon Sep 17 00:00:00 2001 -From: Zhenyu Wang <zhenyu.z.wang@intel.com> -Date: Tue, 20 May 2008 08:54:01 +0800 -Subject: [PATCH] Revert "Add FIFO watermark regs to register dumper" - -This reverts commit 0c00a638ef57aa9d6a3047176b0bfad733f781f0. - -Those FIFO watermark regs are 945-ish, and cause problem -on G35. -(cherry picked from commit 740a73dad1d9a9b0ebf1cc7d6f2a056abad57aaf) - -diff --git a/src/i810_reg.h b/src/i810_reg.h -index cc4620a..834b948 100644 ---- a/src/i810_reg.h -+++ b/src/i810_reg.h -@@ -497,7 +497,6 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - #define FWATER_BLC 0x20d8 - #define FWATER_BLC2 0x20dc --#define FWATER_BLC_SELF 0x20e0 - #define MM_BURST_LENGTH 0x00700000 - #define MM_FIFO_WATERMARK 0x0001F000 - #define LM_BURST_LENGTH 0x00000700 -diff --git a/src/i830_debug.c b/src/i830_debug.c -index 0eba57f..15b02ce 100644 ---- a/src/i830_debug.c -+++ b/src/i830_debug.c -@@ -546,10 +546,6 @@ static struct i830SnapshotRec { - DEFINEREG(FBC_FENCE_OFF), - DEFINEREG(FBC_MOD_NUM), - -- DEFINEREG(FWATER_BLC), -- DEFINEREG(FWATER_BLC2), -- DEFINEREG(FWATER_BLC_SELF), -- - DEFINEREG2(FPA0, i830_debug_fp), - DEFINEREG2(FPA1, i830_debug_fp), - DEFINEREG2(DPLL_A, i830_debug_dpll), --- -1.5.5.3 - diff --git a/x11-drivers/xf86-video-i810/files/2.3.1/0006-Fix-typo-in-xvmc-block-destroy.patch b/x11-drivers/xf86-video-i810/files/2.3.1/0006-Fix-typo-in-xvmc-block-destroy.patch deleted file mode 100644 index 50c36255c7b7..000000000000 --- a/x11-drivers/xf86-video-i810/files/2.3.1/0006-Fix-typo-in-xvmc-block-destroy.patch +++ /dev/null @@ -1,22 +0,0 @@ -From 87ace420a34df7425641d089f71830e44fced098 Mon Sep 17 00:00:00 2001 -From: Shuang He <shuang.he@intel.com> -Date: Mon, 26 May 2008 09:20:53 +0800 -Subject: [PATCH] Fix typo in xvmc block destroy - - -diff --git a/src/xvmc/intel_xvmc.c b/src/xvmc/intel_xvmc.c -index 1be8cc6..3c14f73 100644 ---- a/src/xvmc/intel_xvmc.c -+++ b/src/xvmc/intel_xvmc.c -@@ -513,7 +513,7 @@ Status XvMCCreateBlocks(Display *display, XvMCContext *context, - */ - Status XvMCDestroyBlocks(Display *display, XvMCBlockArray *block) - { -- if (!display || block) -+ if (!display || !block) - return BadValue; - - if (block->blocks) --- -1.5.5.3 - diff --git a/x11-drivers/xf86-video-i810/files/2.3.1/0007-Define-DEFFILEMODE-for-OS-es-that-don-t-have-it.patch b/x11-drivers/xf86-video-i810/files/2.3.1/0007-Define-DEFFILEMODE-for-OS-es-that-don-t-have-it.patch deleted file mode 100644 index 1e775da1e778..000000000000 --- a/x11-drivers/xf86-video-i810/files/2.3.1/0007-Define-DEFFILEMODE-for-OS-es-that-don-t-have-it.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 5dd06d08015cf9c0721f34f7005ecd670025c334 Mon Sep 17 00:00:00 2001 -From: Alan Coopersmith <alan.coopersmith@sun.com> -Date: Wed, 21 May 2008 14:56:27 -0700 -Subject: [PATCH] Define DEFFILEMODE for OS'es that don't have it - (cherry picked from commit 165c0865d849b7d280a3a119fe9ae0ad34637df0) - - -diff --git a/src/bios_reader/bios_dumper.c b/src/bios_reader/bios_dumper.c -index e2f3064..1353eda 100644 ---- a/src/bios_reader/bios_dumper.c -+++ b/src/bios_reader/bios_dumper.c -@@ -36,6 +36,10 @@ - #include <pciaccess.h> - #include <err.h> - -+#ifndef DEFFILEMODE -+#define DEFFILEMODE (S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH) /* 0666*/ -+#endif -+ - static void usage(void) - { - fprintf(stderr, "usage: bios_dumper <filename>\n"); --- -1.5.5.3 - diff --git a/x11-drivers/xf86-video-i810/files/2.3.1/0008-Disable-a-bunch-of-clock-gating-disables-on-IGD_GM.patch b/x11-drivers/xf86-video-i810/files/2.3.1/0008-Disable-a-bunch-of-clock-gating-disables-on-IGD_GM.patch deleted file mode 100644 index fd68cbc051ba..000000000000 --- a/x11-drivers/xf86-video-i810/files/2.3.1/0008-Disable-a-bunch-of-clock-gating-disables-on-IGD_GM.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 0deedbcc98a831284f6e9db2510e88e90e01c286 Mon Sep 17 00:00:00 2001 -From: Eric Anholt <eric@anholt.net> -Date: Mon, 24 Mar 2008 13:25:37 -0700 -Subject: [PATCH] Disable a bunch of clock gating disables on IGD_GM, which doesn't need them. - -Besides our driver having fallen through to the GM965 path for -RENCLK_GATE_D1, the BIOS was turning some of these on. It may be relevant -for previous platforms as well to zero out the fields that should be zero -in the other registers. -(cherry picked from commit 552a1b824db31a234d7c5cb71057ed0e0ce64477) - -diff --git a/src/i830_driver.c b/src/i830_driver.c -index 0db174b..7a08522 100644 ---- a/src/i830_driver.c -+++ b/src/i830_driver.c -@@ -1903,7 +1903,11 @@ SetHWOperatingState(ScrnInfoPtr pScrn) - - /* Disable clock gating reported to work incorrectly according to the specs. - */ -- if (IS_I965GM(pI830)) { -+ if (IS_IGD_GM(pI830)) { -+ OUTREG(RENCLK_GATE_D1, 0); -+ OUTREG(RENCLK_GATE_D2, 0); -+ OUTREG(DSPCLK_GATE_D, VRHUNIT_CLOCK_GATE_DISABLE); -+ } else if (IS_I965GM(pI830)) { - OUTREG(RENCLK_GATE_D1, I965_RCC_CLOCK_GATE_DISABLE); - } else if (IS_I965G(pI830)) { - OUTREG(RENCLK_GATE_D1, --- -1.5.5.3 - diff --git a/x11-drivers/xf86-video-i810/files/2.3.1/0009-Fixup-power-saving-registers.patch b/x11-drivers/xf86-video-i810/files/2.3.1/0009-Fixup-power-saving-registers.patch deleted file mode 100644 index bed1544d4673..000000000000 --- a/x11-drivers/xf86-video-i810/files/2.3.1/0009-Fixup-power-saving-registers.patch +++ /dev/null @@ -1,206 +0,0 @@ -From 88232a9b9af2c73460eec206c4971679af9dcb43 Mon Sep 17 00:00:00 2001 -From: Jesse Barnes <jbarnes@hobbes.lan> -Date: Mon, 26 May 2008 09:34:34 -0700 -Subject: [PATCH] Fixup power saving registers - -Update clock gating disable bits to match docs and allocate a power context -memory area so that newer chips can save state and power down the render unit. -(cherry picked from commit 89bb53cc7a853d88fc34a0ca65ae2b6227a8dd24) - -diff --git a/src/i810_reg.h b/src/i810_reg.h -index 834b948..5ca8ca9 100644 ---- a/src/i810_reg.h -+++ b/src/i810_reg.h -@@ -460,6 +460,8 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - * - new bits for i810 - * - new register hwstam (mask) - */ -+#define PWRCTXA 0x2088 /* 965GM+ only */ -+#define PWRCTX_EN (1<<0) - #define HWSTAM 0x2098 /* p290 */ - #define IER 0x20a0 /* p291 */ - #define IIR 0x20a4 /* p292 */ -@@ -1120,6 +1122,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - - #define RENCLK_GATE_D2 0x6208 - #define RAMCLK_GATE_D 0x6210 /* CRL only */ -+#define DEUC 0x6214 /* CRL only */ - - /* - * This is a PCI config space register to manipulate backlight brightness -diff --git a/src/i830.h b/src/i830.h -index 0ae8270..755c773 100644 ---- a/src/i830.h -+++ b/src/i830.h -@@ -426,6 +426,8 @@ typedef struct _I830Rec { - - i830_memory *logical_context; - -+ i830_memory *power_context; -+ - #ifdef XF86DRI - i830_memory *back_buffer; - i830_memory *third_buffer; -@@ -768,6 +770,7 @@ void i830_free_memory(ScrnInfoPtr pScrn, i830_memory *mem); - extern long I830CheckAvailableMemory(ScrnInfoPtr pScrn); - Bool i830_allocate_2d_memory(ScrnInfoPtr pScrn); - Bool i830_allocate_texture_memory(ScrnInfoPtr pScrn); -+Bool i830_allocate_pwrctx(ScrnInfoPtr pScrn); - Bool i830_allocate_3d_memory(ScrnInfoPtr pScrn); - #ifdef INTEL_XVMC - Bool i830_allocate_xvmc_buffer(ScrnInfoPtr pScrn, const char *name, -diff --git a/src/i830_driver.c b/src/i830_driver.c -index 7a08522..f1efa7b 100644 ---- a/src/i830_driver.c -+++ b/src/i830_driver.c -@@ -934,6 +934,40 @@ I830SetupOutputs(ScrnInfoPtr pScrn) - } - } - -+static void -+i830_init_clock_gating(ScrnInfoPtr pScrn) -+{ -+ I830Ptr pI830 = I830PTR(pScrn); -+ -+ /* Disable clock gating reported to work incorrectly according to the specs. -+ */ -+ if (IS_IGD_GM(pI830)) { -+ OUTREG(RENCLK_GATE_D1, 0); -+ OUTREG(RENCLK_GATE_D2, 0); -+ OUTREG(RAMCLK_GATE_D, 0); -+ OUTREG(DSPCLK_GATE_D, VRHUNIT_CLOCK_GATE_DISABLE | -+ OVRUNIT_CLOCK_GATE_DISABLE | -+ OVCUNIT_CLOCK_GATE_DISABLE); -+ } else if (IS_I965GM(pI830)) { -+ OUTREG(RENCLK_GATE_D1, I965_RCC_CLOCK_GATE_DISABLE); -+ OUTREG(RENCLK_GATE_D2, 0); -+ OUTREG(DSPCLK_GATE_D, 0); -+ OUTREG(RAMCLK_GATE_D, 0); -+ OUTREG16(DEUC, 0); -+ } else if (IS_I965G(pI830)) { -+ OUTREG(RENCLK_GATE_D1, I965_RCZ_CLOCK_GATE_DISABLE | -+ I965_RCC_CLOCK_GATE_DISABLE | -+ I965_RCPB_CLOCK_GATE_DISABLE | -+ I965_ISC_CLOCK_GATE_DISABLE | -+ I965_FBC_CLOCK_GATE_DISABLE); -+ OUTREG(RENCLK_GATE_D2, 0); -+ } else if (IS_I855(pI830) || IS_I865G(pI830)) { -+ OUTREG(RENCLK_GATE_D1, SV_CLOCK_GATE_DISABLE); -+ } else if (IS_I830(pI830)) { -+ OUTREG(DSPCLK_GATE_D, OVRUNIT_CLOCK_GATE_DISABLE); -+ } -+} -+ - static int - I830LVDSPresent(ScrnInfoPtr pScrn) - { -@@ -1461,6 +1495,8 @@ I830PreInit(ScrnInfoPtr pScrn, int flags) - - i830TakeRegSnapshot(pScrn); - -+ i830_init_clock_gating(pScrn); -+ - #if 1 - pI830->saveSWF0 = INREG(SWF0); - pI830->saveSWF4 = INREG(SWF4); -@@ -1901,23 +1937,6 @@ SetHWOperatingState(ScrnInfoPtr pScrn) - - DPRINTF(PFX, "SetHWOperatingState\n"); - -- /* Disable clock gating reported to work incorrectly according to the specs. -- */ -- if (IS_IGD_GM(pI830)) { -- OUTREG(RENCLK_GATE_D1, 0); -- OUTREG(RENCLK_GATE_D2, 0); -- OUTREG(DSPCLK_GATE_D, VRHUNIT_CLOCK_GATE_DISABLE); -- } else if (IS_I965GM(pI830)) { -- OUTREG(RENCLK_GATE_D1, I965_RCC_CLOCK_GATE_DISABLE); -- } else if (IS_I965G(pI830)) { -- OUTREG(RENCLK_GATE_D1, -- I965_RCC_CLOCK_GATE_DISABLE | I965_ISC_CLOCK_GATE_DISABLE); -- } else if (IS_I855(pI830) || IS_I865G(pI830)) { -- OUTREG(RENCLK_GATE_D1, SV_CLOCK_GATE_DISABLE); -- } else if (IS_I830(pI830)) { -- OUTREG(DSPCLK_GATE_D, OVRUNIT_CLOCK_GATE_DISABLE); -- } -- - i830_start_ring(pScrn); - if (!pI830->SWCursor) - I830InitHWCursor(pScrn); -@@ -2504,6 +2523,10 @@ i830_try_memory_allocation(ScrnInfoPtr pScrn) - if (!i830_allocate_2d_memory(pScrn)) - goto failed; - -+ if (IS_I965GM(pI830) || IS_IGD_GM(pI830)) -+ if (!i830_allocate_pwrctx(pScrn)) -+ goto failed; -+ - if (dri && !i830_allocate_3d_memory(pScrn)) - goto failed; - -@@ -2825,6 +2848,9 @@ I830ScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) - return FALSE; - } - -+ if (pI830->power_context) -+ OUTREG(PWRCTXA, pI830->power_context->offset | PWRCTX_EN); -+ - I830UnmapMMIO(pScrn); - - i830_fixup_mtrrs(pScrn); -@@ -3448,6 +3474,9 @@ I830CloseScreen(int scrnIndex, ScreenPtr pScreen) - } - #endif - -+ if (IS_I965GM(pI830) || IS_IGD_GM(pI830)) -+ OUTREG(PWRCTXA, 0); -+ - if (I830IsPrimary(pScrn)) { - xf86GARTCloseScreen(scrnIndex); - -diff --git a/src/i830_memory.c b/src/i830_memory.c -index 6835a6f..9ceb254 100644 ---- a/src/i830_memory.c -+++ b/src/i830_memory.c -@@ -112,6 +112,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - - /* Our hardware status area is just a single page */ - #define HWSTATUS_PAGE_SIZE GTT_PAGE_SIZE -+#define PWRCTX_SIZE GTT_PAGE_SIZE - - static i830_memory * - i830_allocate_aperture(ScrnInfoPtr pScrn, const char *name, -@@ -337,6 +338,7 @@ i830_reset_allocations(ScrnInfoPtr pScrn) - pI830->exa_965_state = NULL; - pI830->overlay_regs = NULL; - pI830->logical_context = NULL; -+ pI830->power_context = NULL; - #ifdef XF86DRI - pI830->back_buffer = NULL; - pI830->third_buffer = NULL; -@@ -1654,6 +1656,22 @@ i830_allocate_hwstatus(ScrnInfoPtr pScrn) - } - - Bool -+i830_allocate_pwrctx(ScrnInfoPtr pScrn) -+{ -+ I830Ptr pI830 = I830PTR(pScrn); -+ -+ pI830->power_context = i830_allocate_memory(pScrn, "power context", -+ PWRCTX_SIZE, GTT_PAGE_SIZE, -+ NEED_LIFETIME_FIXED); -+ if (!pI830->power_context) { -+ xf86DrvMsg(pScrn->scrnIndex, X_WARNING, -+ "Failed to allocate power context.\n"); -+ return FALSE; -+ } -+ return TRUE; -+} -+ -+Bool - i830_allocate_3d_memory(ScrnInfoPtr pScrn) - { - I830Ptr pI830 = I830PTR(pScrn); --- -1.5.5.3 - diff --git a/x11-drivers/xf86-video-i810/files/2.3.1/0010-xvmc-remove-unused-dri-drawable.patch b/x11-drivers/xf86-video-i810/files/2.3.1/0010-xvmc-remove-unused-dri-drawable.patch deleted file mode 100644 index 16b2bcd61887..000000000000 --- a/x11-drivers/xf86-video-i810/files/2.3.1/0010-xvmc-remove-unused-dri-drawable.patch +++ /dev/null @@ -1,316 +0,0 @@ -From ce674bd39c2fe2844b449fad6cfe83b4d18adad6 Mon Sep 17 00:00:00 2001 -From: Zhenyu Wang <zhenyu.z.wang@intel.com> -Date: Tue, 3 Jun 2008 16:13:52 +0800 -Subject: [PATCH] xvmc: remove unused dri drawable - (cherry picked from commit 96955003557686469c7ae9f7d42620d2851e6fad) - - -diff --git a/src/xvmc/Makefile.am b/src/xvmc/Makefile.am -index f571743..f2dab22 100644 ---- a/src/xvmc/Makefile.am -+++ b/src/xvmc/Makefile.am -@@ -19,9 +19,8 @@ libIntelXvMC_la_SOURCES = intel_xvmc.c \ - intel_batchbuffer.h \ - xf86dri.c \ - xf86dri.h \ -- xf86dristr.h \ -- driDrawable.c \ -- driDrawable.h -+ xf86dristr.h -+ - libIntelXvMC_la_CFLAGS = @XORG_CFLAGS@ @DRI_CFLAGS@ @XVMCLIB_CFLAGS@ -I$(top_srcdir)/src -DTRUE=1 -DFALSE=0 - libIntelXvMC_la_LDFLAGS = -version-number 1:0:0 - libIntelXvMC_la_LIBADD = @DRI_LIBS@ -diff --git a/src/xvmc/driDrawable.c b/src/xvmc/driDrawable.c -deleted file mode 100644 -index 8386334..0000000 ---- a/src/xvmc/driDrawable.c -+++ /dev/null -@@ -1,174 +0,0 @@ --/***************************************************************************** -- * driDrawable.c: Lean Version of DRI utilities. -- * -- * Copyright (c) 2005 Thomas Hellstrom. All rights reserved. -- * -- * Permission is hereby granted, free of charge, to any person obtaining a -- * copy of this software and associated documentation files (the "Software"), -- * to deal in the Software without restriction, including without limitation -- * the rights to use, copy, modify, merge, publish, distribute, sublicense, -- * and/or sell copies of the Software, and to permit persons to whom the -- * Software is furnished to do so, subject to the following conditions: -- * -- * The above copyright notice and this permission notice shall be included in -- * all copies or substantial portions of the Software. -- * -- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -- * AUTHOR(S) OR COPYRIGHT HOLDER(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -- * DEALINGS IN THE SOFTWARE. -- */ -- -- --#include <X11/Xlibint.h> --#include <X11/Xutil.h> --#include "xf86drm.h" --#include "drm.h" --#include "xf86dri.h" --#include "drm_sarea.h" --#include "driDrawable.h" -- --static unsigned --drawStamp(volatile drm_sarea_t * pSarea, int index) --{ -- return pSarea->drawableTable[index].stamp; --} -- --int --getDRIDrawableInfoLocked(void *drawHash, Display * display, int screen, -- Drawable draw, unsigned lockFlags, int drmFD, drm_context_t drmContext, -- drmAddress sarea, Bool updateInfo, drawableInfo ** info, -- unsigned long infoSize) --{ -- drawableInfo *drawInfo; -- void *res; -- drm_drawable_t drmDraw = 0; -- volatile drm_sarea_t *pSarea = (drm_sarea_t *) sarea; -- drm_clip_rect_t *clipFront, *clipBack; -- -- int ret; -- -- if (drmHashLookup(drawHash, (unsigned long)draw, &res)) { -- -- /* -- * The drawable is unknown to us. Create it and put it in the -- * hash table. -- */ -- -- DRM_UNLOCK(drmFD, &pSarea->lock, drmContext); -- if (!uniDRICreateDrawable(display, screen, draw, &drmDraw)) { -- DRM_LOCK(drmFD, &pSarea->lock, drmContext, lockFlags); -- return 1; -- } -- DRM_LOCK(drmFD, &pSarea->lock, drmContext, lockFlags); -- -- drawInfo = (drawableInfo *) malloc(infoSize); -- if (!drawInfo) -- return 1; -- -- drawInfo->drmDraw = drmDraw; -- drawInfo->stamp = 0; -- drawInfo->clipFront = 0; -- drawInfo->clipBack = 0; -- -- drmHashInsert(drawHash, (unsigned long)draw, drawInfo); -- -- } else { -- drawInfo = res; -- } -- -- drawInfo->touched = FALSE; -- while (!drawInfo->clipFront -- || drawInfo->stamp != drawStamp(pSarea, drawInfo->index)) { -- -- /* -- * The drawable has been touched since we last got info about it. -- * obtain new info from the X server. -- */ -- -- drawInfo->touched = TRUE; -- -- if (updateInfo || !drawInfo->clipFront) { -- DRM_UNLOCK(drmFD, &pSarea->lock, drmContext); -- -- ret = uniDRIGetDrawableInfo(display, screen, draw, -- &drawInfo->index, &drawInfo->stamp, &drawInfo->x, -- &drawInfo->y, &drawInfo->w, &drawInfo->h, -- &drawInfo->numClipFront, &clipFront, -- &drawInfo->backX, &drawInfo->backY, -- &drawInfo->numClipBack, &clipBack); -- -- DRM_LIGHT_LOCK(drmFD, &pSarea->lock, drmContext); -- -- /* -- * Error. Probably the drawable is destroyed. Return error and old values. -- */ -- -- if (!ret) { -- free(drawInfo); -- drawInfo = NULL; -- drmHashDelete(drawHash, (unsigned long)draw); -- -- DRM_UNLOCK(drmFD, &pSarea->lock, drmContext); -- uniDRIDestroyDrawable(display, screen, draw); -- DRM_LOCK(drmFD, &pSarea->lock, drmContext, lockFlags); -- -- return 1; -- } -- -- if (drawInfo->stamp != drawStamp(pSarea, drawInfo->index)) { -- -- /* -- * The info is already outdated. Sigh. Have another go. -- */ -- -- XFree(clipFront); -- XFree(clipBack); -- continue; -- } -- -- if (drawInfo->clipFront) -- XFree(drawInfo->clipFront); -- drawInfo->clipFront = clipFront; -- if (drawInfo->clipBack) -- XFree(drawInfo->clipBack); -- drawInfo->clipBack = clipBack; -- } else { -- if (!drawInfo->clipFront) -- drawInfo->clipFront = (drm_clip_rect_t *) ~ 0UL; -- drawInfo->stamp = drawStamp(pSarea, drawInfo->index); -- } -- } -- *info = drawInfo; -- return 0; --} -- --void --driDestroyHashContents(void *drawHash) --{ -- unsigned long key; -- void *content; -- drawableInfo *drawInfo; -- -- if (drmHashFirst(drawHash, &key, &content) < 1) -- return; -- drawInfo = (drawableInfo *) content; -- if (drawInfo->clipBack) -- XFree(drawInfo->clipBack); -- if (drawInfo->clipFront) -- XFree(drawInfo->clipFront); -- free(drawInfo); -- while (drmHashNext(drawHash, &key, &content) == 1) { -- drawInfo = (drawableInfo *) content; -- if (drawInfo->clipBack) -- XFree(drawInfo->clipBack); -- if (drawInfo->clipFront) -- XFree(drawInfo->clipFront); -- free(drawInfo); -- } -- -- return; --} -diff --git a/src/xvmc/driDrawable.h b/src/xvmc/driDrawable.h -deleted file mode 100644 -index a758c7c..0000000 ---- a/src/xvmc/driDrawable.h -+++ /dev/null -@@ -1,64 +0,0 @@ --/***************************************************************************** -- * driDrawable.h: Lean Version of DRI utilities. -- * -- * Copyright (c) 2005 Thomas Hellstrom. All rights reserved. -- * -- * Permission is hereby granted, free of charge, to any person obtaining a -- * copy of this software and associated documentation files (the "Software"), -- * to deal in the Software without restriction, including without limitation -- * the rights to use, copy, modify, merge, publish, distribute, sublicense, -- * and/or sell copies of the Software, and to permit persons to whom the -- * Software is furnished to do so, subject to the following conditions: -- * -- * The above copyright notice and this permission notice shall be included in -- * all copies or substantial portions of the Software. -- * -- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -- * AUTHOR(S) OR COPYRIGHT HOLDER(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -- * DEALINGS IN THE SOFTWARE. -- */ -- --#ifndef _DRIDRAWABLE_H --#define _DRIDRAWABLE_H -- --typedef struct _drawableInfo --{ -- drm_drawable_t drmDraw; -- unsigned stamp; -- unsigned index; -- drm_clip_rect_t *clipFront; -- drm_clip_rect_t *clipBack; -- int x; -- int y; -- int w; -- int h; -- int backX; -- int backY; -- int numClipFront; -- int numClipBack; -- Bool touched; --} drawableInfo; -- --/* -- * Get updated info about the drawable "draw". The drawableInfo record returned is malloced -- * and administrated internally. Never free it unless you know exactly what you are doing. -- * The drm hash table "drawHash" needs to be initialized externally. -- */ -- --extern int --getDRIDrawableInfoLocked(void *drawHash, Display * display, int screen, -- Drawable draw, unsigned lockFlags, int drmFD, drm_context_t drmContext, -- drmAddress sarea, Bool updateInfo, drawableInfo ** info, -- unsigned long infoSize); -- --/* -- * Free all resources created by the above function. Typically done on exit. -- */ -- --extern void driDestroyHashContents(void *drawHash); -- --#endif -diff --git a/src/xvmc/i915_xvmc.c b/src/xvmc/i915_xvmc.c -index 20b2e61..f2d8ded 100644 ---- a/src/xvmc/i915_xvmc.c -+++ b/src/xvmc/i915_xvmc.c -@@ -1608,9 +1608,6 @@ static void i915_release_resource(Display *display, XvMCContext *context) - pI915XvMC->ref--; - i915_xvmc_unmap_buffers(pI915XvMC); - -- driDestroyHashContents(pI915XvMC->drawHash); -- drmHashDestroy(pI915XvMC->drawHash); -- - free(pI915XvMC); - context->privData = NULL; - } -@@ -1683,13 +1680,6 @@ static Status i915_xvmc_mc_create_context(Display *display, XvMCContext *context - pSAREA = (drm_sarea_t *)xvmc_driver->sarea_address; - pI915XvMC->sarea = (drmI830Sarea*)((char*)pSAREA + pI915XvMC->sarea_priv_offset); - -- if (NULL == (pI915XvMC->drawHash = drmHashCreate())) { -- XVMC_ERR("Could not allocate drawable hash table."); -- free(pI915XvMC); -- context->privData = NULL; -- return BadAlloc; -- } -- - if (i915_xvmc_map_buffers(pI915XvMC)) { - i915_xvmc_unmap_buffers(pI915XvMC); - free(pI915XvMC); -diff --git a/src/xvmc/intel_xvmc.h b/src/xvmc/intel_xvmc.h -index 5506683..bc863c4 100644 ---- a/src/xvmc/intel_xvmc.h -+++ b/src/xvmc/intel_xvmc.h -@@ -53,7 +53,6 @@ - #include <drm_sarea.h> - - #include "xf86dri.h" --#include "driDrawable.h" - - #include "intel_batchbuffer.h" - --- -1.5.5.3 - diff --git a/x11-drivers/xf86-video-i810/files/2.3.1/0011-xvmc-a-little-cleanup.patch b/x11-drivers/xf86-video-i810/files/2.3.1/0011-xvmc-a-little-cleanup.patch deleted file mode 100644 index 45348de05cca..000000000000 --- a/x11-drivers/xf86-video-i810/files/2.3.1/0011-xvmc-a-little-cleanup.patch +++ /dev/null @@ -1,140 +0,0 @@ -From 14dc93cb4dabdd83ee62a2a497c210aeb52f6c30 Mon Sep 17 00:00:00 2001 -From: Zhenyu Wang <zhenyu.z.wang@intel.com> -Date: Thu, 12 Jun 2008 13:47:04 +0800 -Subject: [PATCH] xvmc: a little cleanup - -Also safe check context size to not exceed surface max. - -diff --git a/src/i830.h b/src/i830.h -index 755c773..db930a0 100644 ---- a/src/i830.h -+++ b/src/i830.h -@@ -660,6 +660,8 @@ typedef struct _I830Rec { - - #define I830PTR(p) ((I830Ptr)((p)->driverPrivate)) - -+#define ARRAY_SIZE(x) (sizeof(x) / sizeof(x[0])) -+ - #define I830_SELECT_FRONT 0 - #define I830_SELECT_BACK 1 - #define I830_SELECT_DEPTH 2 -diff --git a/src/i915_hwmc.c b/src/i915_hwmc.c -index c3d3c75..50e1106 100644 ---- a/src/i915_hwmc.c -+++ b/src/i915_hwmc.c -@@ -95,8 +95,6 @@ typedef struct _I915XvMC - PutImageFuncPtr savePutImage; - } I915XvMC, *I915XvMCPtr; - --#define ARRARY_SIZE(a) (sizeof(a) / sizeof(a[0])) -- - /* - static int yv12_subpicture_index_list[2] = - { -@@ -161,6 +159,22 @@ static XF86ImagePtr i915_subpicture_list[2] = - }; - #endif - -+/* Check context size not exceed surface type max */ -+static void -+i915_check_context_size(XvMCContextPtr ctx) -+{ -+ int i; -+ -+ for (i = 0; i < ARRAY_SIZE(ppSI); i++) { -+ if (ctx->surface_type_id == ppSI[i]->surface_type_id) { -+ if (ctx->width > ppSI[i]->max_width) -+ ctx->width = ppSI[i]->max_width; -+ if (ctx->height > ppSI[i]->max_height) -+ ctx->height = ppSI[i]->max_height; -+ } -+ } -+} -+ - /* - * Init and clean up the screen private parts of XvMC. - */ -@@ -430,6 +444,8 @@ static int i915_xvmc_create_context (ScrnInfoPtr pScrn, XvMCContextPtr pContext, - return BadAlloc; - } - -+ i915_check_context_size(pContext); -+ - *priv = xcalloc(1, sizeof(I915XvMCCreateContextRec)); - contextRec = (I915XvMCCreateContextRec *)*priv; - -@@ -776,10 +792,9 @@ static int i915_xvmc_put_image(ScrnInfoPtr pScrn, - struct intel_xvmc_command *xvmc_cmd = (struct intel_xvmc_command *)buf; - int ret; - -- if (pI830->XvMCEnabled) { -- if (FOURCC_XVMC == id) { -- switch (xvmc_cmd->command) { -- case INTEL_XVMC_COMMAND_DISPLAY: -+ if (FOURCC_XVMC == id) { -+ switch (xvmc_cmd->command) { -+ case INTEL_XVMC_COMMAND_DISPLAY: - if ((xvmc_cmd->srfNo >= I915_XVMC_MAX_SURFACES) || - !pXvMC->surfaces[xvmc_cmd->srfNo] || - !pXvMC->sfprivs[xvmc_cmd->srfNo]) { -@@ -793,10 +808,9 @@ static int i915_xvmc_put_image(ScrnInfoPtr pScrn, - id = xvmc_cmd->real_id; - pI830->IsXvMCSurface = 1; - break; -- default: -- return 0; -- } -- } -+ default: -+ return 0; -+ } - } - - ret = pXvMC->savePutImage(pScrn, src_x, src_y, drw_x, drw_y, src_w, src_h, -@@ -850,7 +864,7 @@ static void i915_xvmc_fini(ScrnInfoPtr pScrn) - static XF86MCAdaptorRec pAdapt = - { - .name = "Intel(R) Textured Video", -- .num_surfaces = ARRARY_SIZE(ppSI), -+ .num_surfaces = ARRAY_SIZE(ppSI), - .surfaces = ppSI, - #if 0 - .num_subpictures = ARRARY_SIZE(i915_subpicture_list), -diff --git a/src/i915_hwmc.h b/src/i915_hwmc.h -index 0141fb2..7d90afc 100644 ---- a/src/i915_hwmc.h -+++ b/src/i915_hwmc.h -@@ -32,7 +32,7 @@ - #define STRIDE(w) (((w) + 0x3ff) & ~0x3ff) - #define SIZE_Y420(w, h) (h * STRIDE(w)) - #define SIZE_UV420(w, h) ((h >> 1) * STRIDE(w >> 1)) --#define SIZE_YUV420(w, h) (h * (STRIDE(w) + STRIDE(w >> 1))) -+#define SIZE_YUV420(w, h) (SIZE_Y420(w,h) + SIZE_UV420(w,h) * 2) - #define SIZE_XX44(w, h) (h * STRIDE(w)) - - #define I915_NUM_XVMC_ATTRIBUTES 0x02 -diff --git a/src/xvmc/i915_xvmc.c b/src/xvmc/i915_xvmc.c -index f2d8ded..b1a17b4 100644 ---- a/src/xvmc/i915_xvmc.c -+++ b/src/xvmc/i915_xvmc.c -@@ -1987,7 +1987,7 @@ static int i915_xvmc_mc_render_surface(Display *display, XvMCContext *context, - XVMC_ERR("Invalid Macroblock Parameters found."); - break; - } -- } else { /* Frame Picture */ -+ } else { /* Field Picture */ - switch (mb->motion_type & 3) { - case XVMC_PREDICTION_FIELD: /* Field Based */ - i915_mc_mpeg_macroblock_1fbmv(context, mb); -@@ -2005,7 +2005,7 @@ static int i915_xvmc_mc_render_surface(Display *display, XvMCContext *context, - XVMC_ERR("Invalid Macroblock Parameters found."); - break; - } -- } /* Field Picture */ -+ } - } - - intelFlushBatch(TRUE); --- -1.5.5.3 - diff --git a/x11-drivers/xf86-video-i810/files/2.3.1/0012-Set-SDVO-sync-polarity-to-default-on-965.patch b/x11-drivers/xf86-video-i810/files/2.3.1/0012-Set-SDVO-sync-polarity-to-default-on-965.patch deleted file mode 100644 index 6bb59e4a883b..000000000000 --- a/x11-drivers/xf86-video-i810/files/2.3.1/0012-Set-SDVO-sync-polarity-to-default-on-965.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 85308ab8aaf58b6620a41621128eba0b7e1ffb44 Mon Sep 17 00:00:00 2001 -From: Hong Liu <hong.liu@intel.com> -Date: Wed, 4 Jun 2008 16:58:05 +0800 -Subject: [PATCH] Set SDVO sync polarity to default on 965 - -Fix fd.o bug 15766 -(cherry picked from commit beb72ae5aa053303f5cc419e9c9d7c6db964f160) - -diff --git a/src/i810_reg.h b/src/i810_reg.h -index 5ca8ca9..79a5b1e 100644 ---- a/src/i810_reg.h -+++ b/src/i810_reg.h -@@ -1222,6 +1222,10 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - #define SDVO_CLOCK_OUTPUT_INVERT (1 << 18) - #define SDVOC_GANG_MODE (1 << 16) - #define SDVO_BORDER_ENABLE (1 << 7) -+/** new with 965, default is to be set */ -+#define SDVO_VSYNC_ACTIVE_HIGH (1 << 4) -+#define SDVO_HSYNC_ACTIVE_HIGH (1 << 3) -+/** 915/945 only, read-only bit */ - #define SDVOB_PCIE_CONCURRENCY (1 << 3) - #define SDVO_DETECTED (1 << 2) - /* Bits to be preserved when writing */ -diff --git a/src/i830_sdvo.c b/src/i830_sdvo.c -index f60e38c..0dc6dca 100644 ---- a/src/i830_sdvo.c -+++ b/src/i830_sdvo.c -@@ -730,7 +730,9 @@ i830_sdvo_mode_set(xf86OutputPtr output, DisplayModePtr mode, - - /* Set the SDVO control regs. */ - if (IS_I965G(pI830)) { -- sdvox = SDVO_BORDER_ENABLE; -+ sdvox = SDVO_BORDER_ENABLE | -+ SDVO_VSYNC_ACTIVE_HIGH | -+ SDVO_HSYNC_ACTIVE_HIGH; - } else { - sdvox = INREG(dev_priv->output_device); - switch (dev_priv->output_device) { --- -1.5.5.3 - diff --git a/x11-drivers/xf86-video-i810/files/2.3.1/0013-Just-remove-the-mprotect-kludge.patch b/x11-drivers/xf86-video-i810/files/2.3.1/0013-Just-remove-the-mprotect-kludge.patch deleted file mode 100644 index 42097e09b182..000000000000 --- a/x11-drivers/xf86-video-i810/files/2.3.1/0013-Just-remove-the-mprotect-kludge.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 7d267e27c152a4935ec5301d9fbbfd6eff8816d4 Mon Sep 17 00:00:00 2001 -From: Eric Anholt <eric@anholt.net> -Date: Thu, 5 Jun 2008 11:26:02 -0700 -Subject: [PATCH] Just remove the mprotect kludge. - -Besides not being #ifdef __linux__ed as requested, some linux kernels break -in exciting new ways when you try to mprotect from PROT_NONE back to -PROT_READ|PROT_WRITE. Yes, there are bugs in the code we're calling in a -bug-exploiting bug workaround. - -If you want this workaround for the original bug exposed when moving to -libpciaccess, it's already in libpciaccess. -(cherry picked from commit 65306cdd71dad71e4ca7229764f81a0880dd70bf) - -diff --git a/src/i830_driver.c b/src/i830_driver.c -index f1efa7b..a237374 100644 ---- a/src/i830_driver.c -+++ b/src/i830_driver.c -@@ -692,11 +692,6 @@ I830MapMem(ScrnInfoPtr pScrn) - (void **) &pI830->FbBase); - if (err) - return FALSE; -- /* KLUDGE ALERT -- rewrite the PTEs to turn off the CD and WT bits */ --#if HAVE_MPROTECT -- mprotect (pI830->FbBase, pI830->FbMapSize, PROT_NONE); -- mprotect (pI830->FbBase, pI830->FbMapSize, PROT_READ|PROT_WRITE); --#endif - #else - pI830->FbBase = xf86MapPciMem(pScrn->scrnIndex, VIDMEM_FRAMEBUFFER, - pI830->PciTag, --- -1.5.5.3 - diff --git a/x11-drivers/xf86-video-i810/files/2.3.1/0014-Replace-a-couple-of-wait-for-ring-idles-with-a-singl.patch b/x11-drivers/xf86-video-i810/files/2.3.1/0014-Replace-a-couple-of-wait-for-ring-idles-with-a-singl.patch deleted file mode 100644 index e7bb3dbf34bc..000000000000 --- a/x11-drivers/xf86-video-i810/files/2.3.1/0014-Replace-a-couple-of-wait-for-ring-idles-with-a-singl.patch +++ /dev/null @@ -1,102 +0,0 @@ -From a4e8b188d469c8092d4314be96a697fb4f780276 Mon Sep 17 00:00:00 2001 -From: Eric Anholt <eric@anholt.net> -Date: Thu, 5 Jun 2008 11:56:42 -0700 -Subject: [PATCH] Replace a couple of wait-for-ring-idles with a single function to do so. - (cherry picked from commit 7e51384c973a96366b02ea646392c43574674111) - - -diff --git a/src/i830.h b/src/i830.h -index db930a0..a7cdb8c 100644 ---- a/src/i830.h -+++ b/src/i830.h -@@ -853,6 +853,14 @@ i830_get_transformed_coordinates_3d(int x, int y, PictTransformPtr transform, - - void i830_enter_render(ScrnInfoPtr); - -+static inline void -+i830_wait_ring_idle(ScrnInfoPtr pScrn) -+{ -+ I830Ptr pI830 = I830PTR(pScrn); -+ -+ I830WaitLpRing(pScrn, pI830->LpRing->mem->size - 8, 0); -+} -+ - static inline int i830_fb_compression_supported(I830Ptr pI830) - { - if (!IS_MOBILE(pI830)) -diff --git a/src/i830_accel.c b/src/i830_accel.c -index 953a73b..7784c62 100644 ---- a/src/i830_accel.c -+++ b/src/i830_accel.c -@@ -201,7 +201,7 @@ I830Sync(ScrnInfoPtr pScrn) - ADVANCE_BATCH(); - } - -- I830WaitLpRing(pScrn, pI830->LpRing->mem->size - 8, 0); -+ i830_wait_ring_idle(pScrn); - - pI830->LpRing->space = pI830->LpRing->mem->size - 8; - pI830->nextColorExpandBuf = 0; -diff --git a/src/i830_driver.c b/src/i830_driver.c -index a237374..16092dd 100644 ---- a/src/i830_driver.c -+++ b/src/i830_driver.c -@@ -1851,7 +1851,7 @@ i830_stop_ring(ScrnInfoPtr pScrn, Bool flush) - if (temp & RING_VALID) { - i830_refresh_ring(pScrn); - I830Sync(pScrn); -- DO_RING_IDLE(); -+ i830_wait_ring_idle(pScrn); - } - - OUTREG(LP_RING + RING_LEN, 0); -@@ -3358,10 +3358,10 @@ I830EnterVT(int scrnIndex, int flags) - int i; - - I830DRIResume(screenInfo.screens[scrnIndex]); -- -+ - i830_refresh_ring(pScrn); - I830Sync(pScrn); -- DO_RING_IDLE(); -+ i830_wait_ring_idle(pScrn); - - sarea->texAge++; - for(i = 0; i < I830_NR_TEX_REGIONS+1 ; i++) -diff --git a/src/i830_ring.h b/src/i830_ring.h -index cf789eb..c2078fb 100644 ---- a/src/i830_ring.h -+++ b/src/i830_ring.h -@@ -75,28 +75,13 @@ union intfloat { - pI830->ring_emitting = 0; \ - } while (0) - --/* -- * XXX Note: the head/tail masks are different for 810 and i830. -- * If the i810 always sets the higher bits to 0, then this shouldn't be -- * a problem. Check this! -- */ --#define DO_RING_IDLE() do { \ -- int _head; \ -- int _tail; \ -- do { \ -- _head = INREG(LP_RING + RING_HEAD) & I830_HEAD_MASK; \ -- _tail = INREG(LP_RING + RING_TAIL) & I830_TAIL_MASK; \ -- DELAY(10); \ -- } while (_head != _tail); \ --} while (0) -- - #define BEGIN_LP_RING(n) \ - do { \ - if (pI830->ring_emitting != 0) \ - FatalError("%s: BEGIN_LP_RING called without closing " \ - "ADVANCE_LP_RING\n", __FUNCTION__); \ - if ((n) > 2 && (I810_DEBUG&DEBUG_ALWAYS_SYNC)) \ -- DO_RING_IDLE(); \ -+ i830_wait_ring_idle(pScrn); \ - pI830->ring_emitting = (n) * 4; \ - if ((n) & 1) \ - pI830->ring_emitting += 4; \ --- -1.5.5.3 - diff --git a/x11-drivers/xf86-video-i810/files/2.3.1/0015-Remove-duplicated-i830_stop_ring-SetHWOperatingSta.patch b/x11-drivers/xf86-video-i810/files/2.3.1/0015-Remove-duplicated-i830_stop_ring-SetHWOperatingSta.patch deleted file mode 100644 index 044dedba1cf5..000000000000 --- a/x11-drivers/xf86-video-i810/files/2.3.1/0015-Remove-duplicated-i830_stop_ring-SetHWOperatingSta.patch +++ /dev/null @@ -1,24 +0,0 @@ -From e0a2b1008f751ee8cddb0d7587514ea574821af6 Mon Sep 17 00:00:00 2001 -From: Eric Anholt <eric@anholt.net> -Date: Thu, 5 Jun 2008 13:39:08 -0700 -Subject: [PATCH] Remove duplicated i830_stop_ring()/SetHWOperatingState() in EnterVT(). - (cherry picked from commit adb4f5a5e826e584ab212d23fc8d474c3e7bb8e8) - - -diff --git a/src/i830_driver.c b/src/i830_driver.c -index 16092dd..cf4586b 100644 ---- a/src/i830_driver.c -+++ b/src/i830_driver.c -@@ -3323,9 +3323,6 @@ I830EnterVT(int scrnIndex, int flags) - } - i830DescribeOutputConfiguration(pScrn); - -- i830_stop_ring(pScrn, TRUE); -- SetHWOperatingState(pScrn); -- - #ifdef XF86DRI - if (pI830->directRenderingEnabled) { - /* HW status is fixed, we need to set it up before any drm --- -1.5.5.3 - diff --git a/x11-drivers/xf86-video-i810/files/2.3.1/0016-Remove-gratuitous-wait_ring_idle-after-I830Sync.-Sy.patch b/x11-drivers/xf86-video-i810/files/2.3.1/0016-Remove-gratuitous-wait_ring_idle-after-I830Sync.-Sy.patch deleted file mode 100644 index 0c013dd4b5de..000000000000 --- a/x11-drivers/xf86-video-i810/files/2.3.1/0016-Remove-gratuitous-wait_ring_idle-after-I830Sync.-Sy.patch +++ /dev/null @@ -1,30 +0,0 @@ -From ae65ddbbc8064c33febc7608122828998ee15a2e Mon Sep 17 00:00:00 2001 -From: Eric Anholt <eric@anholt.net> -Date: Thu, 5 Jun 2008 13:57:54 -0700 -Subject: [PATCH] Remove gratuitous wait_ring_idle after I830Sync. Syncing implies that. - (cherry picked from commit b61cb9283185eb5211e84eb7d8e68beea607c2eb) - - -diff --git a/src/i830_driver.c b/src/i830_driver.c -index cf4586b..c53d2c3 100644 ---- a/src/i830_driver.c -+++ b/src/i830_driver.c -@@ -1851,7 +1851,6 @@ i830_stop_ring(ScrnInfoPtr pScrn, Bool flush) - if (temp & RING_VALID) { - i830_refresh_ring(pScrn); - I830Sync(pScrn); -- i830_wait_ring_idle(pScrn); - } - - OUTREG(LP_RING + RING_LEN, 0); -@@ -3358,7 +3357,6 @@ I830EnterVT(int scrnIndex, int flags) - - i830_refresh_ring(pScrn); - I830Sync(pScrn); -- i830_wait_ring_idle(pScrn); - - sarea->texAge++; - for(i = 0; i < I830_NR_TEX_REGIONS+1 ; i++) --- -1.5.5.3 - diff --git a/x11-drivers/xf86-video-i810/files/2.3.1/0017-Move-BIOS-scratch-register-setup-to-EnterVT-instead.patch b/x11-drivers/xf86-video-i810/files/2.3.1/0017-Move-BIOS-scratch-register-setup-to-EnterVT-instead.patch deleted file mode 100644 index 5f192e0eb76f..000000000000 --- a/x11-drivers/xf86-video-i810/files/2.3.1/0017-Move-BIOS-scratch-register-setup-to-EnterVT-instead.patch +++ /dev/null @@ -1,105 +0,0 @@ -From 71befe0581bcc7d75ed982b543bbf575c2f48c37 Mon Sep 17 00:00:00 2001 -From: Eric Anholt <eric@anholt.net> -Date: Thu, 5 Jun 2008 14:09:45 -0700 -Subject: [PATCH] Move BIOS scratch register setup to EnterVT instead of PreInit. - -We want these to always be set when our driver's in control. They are -already appropriately save/restored at leave/entervt. -(cherry picked from commit 8061e5ac27a5f61f940bccc940be922999cc1d3f) - -diff --git a/src/i830.h b/src/i830.h -index a7cdb8c..ca7acc9 100644 ---- a/src/i830.h -+++ b/src/i830.h -@@ -554,10 +554,6 @@ typedef struct _I830Rec { - - Bool StolenOnly; - -- Bool swfSaved; -- uint32_t saveSWF0; -- uint32_t saveSWF4; -- - Bool checkDevices; - - /* Driver phase/state information */ -diff --git a/src/i830_driver.c b/src/i830_driver.c -index c53d2c3..862ddde 100644 ---- a/src/i830_driver.c -+++ b/src/i830_driver.c -@@ -963,6 +963,19 @@ i830_init_clock_gating(ScrnInfoPtr pScrn) - } - } - -+static void -+i830_init_bios_control(ScrnInfoPtr pScrn) -+{ -+ I830Ptr pI830 = I830PTR(pScrn); -+ -+ /* Set "extended desktop" */ -+ OUTREG(SWF0, INREG(SWF0) | (1 << 21)); -+ -+ /* Set "driver loaded", "OS unknown", "APM 1.2" */ -+ OUTREG(SWF4, (INREG(SWF4) & ~((3 << 19) | (7 << 16))) | -+ (1 << 23) | (2 << 16)); -+} -+ - static int - I830LVDSPresent(ScrnInfoPtr pScrn) - { -@@ -1021,10 +1034,6 @@ PreInitCleanup(ScrnInfoPtr pScrn) - if (pI830->entityPrivate) - pI830->entityPrivate->pScrn_2 = NULL; - } -- if (pI830->swfSaved) { -- OUTREG(SWF0, pI830->saveSWF0); -- OUTREG(SWF4, pI830->saveSWF4); -- } - if (pI830->MMIOBase) - I830UnmapMMIO(pScrn); - I830FreeRec(pScrn); -@@ -1492,19 +1501,6 @@ I830PreInit(ScrnInfoPtr pScrn, int flags) - - i830_init_clock_gating(pScrn); - --#if 1 -- pI830->saveSWF0 = INREG(SWF0); -- pI830->saveSWF4 = INREG(SWF4); -- pI830->swfSaved = TRUE; -- -- /* Set "extended desktop" */ -- OUTREG(SWF0, pI830->saveSWF0 | (1 << 21)); -- -- /* Set "driver loaded", "OS unknown", "APM 1.2" */ -- OUTREG(SWF4, (pI830->saveSWF4 & ~((3 << 19) | (7 << 16))) | -- (1 << 23) | (2 << 16)); --#endif -- - if (DEVICE_ID(pI830->PciInfo) == PCI_CHIP_E7221_G) - num_pipe = 1; - else -@@ -1739,12 +1735,6 @@ I830PreInit(ScrnInfoPtr pScrn, int flags) - pI830->noAccel = TRUE; - } - -- /* Don't need MMIO access anymore. */ -- if (pI830->swfSaved) { -- OUTREG(SWF0, pI830->saveSWF0); -- OUTREG(SWF4, pI830->saveSWF4); -- } -- - /* Set display resolution */ - xf86SetDpi(pScrn, 0, 0); - -@@ -3309,6 +3299,9 @@ I830EnterVT(int scrnIndex, int flags) - i830_stop_ring(pScrn, FALSE); - SetHWOperatingState(pScrn); - -+ /* Tell the BIOS that we're in control of mode setting now. */ -+ i830_init_bios_control(pScrn); -+ - /* Clear the framebuffer */ - memset(pI830->FbBase + pScrn->fbOffset, 0, - pScrn->virtualY * pScrn->displayWidth * pI830->cpp); --- -1.5.5.3 - diff --git a/x11-drivers/xf86-video-i810/files/2.3.1/0018-Initialize-clock-gating-from-EnterVT-and-save-restor.patch b/x11-drivers/xf86-video-i810/files/2.3.1/0018-Initialize-clock-gating-from-EnterVT-and-save-restor.patch deleted file mode 100644 index da5e56b49b5e..000000000000 --- a/x11-drivers/xf86-video-i810/files/2.3.1/0018-Initialize-clock-gating-from-EnterVT-and-save-restor.patch +++ /dev/null @@ -1,90 +0,0 @@ -From 34ce546153ce9dd0571ce0a5cec7a481641fbbdd Mon Sep 17 00:00:00 2001 -From: Eric Anholt <eric@anholt.net> -Date: Thu, 5 Jun 2008 14:37:26 -0700 -Subject: [PATCH] Initialize clock gating from EnterVT and save/restore it appropriately. - - -diff --git a/src/i830.h b/src/i830.h -index ca7acc9..a96fa5b 100644 ---- a/src/i830.h -+++ b/src/i830.h -@@ -645,6 +645,10 @@ typedef struct _I830Rec { - uint32_t saveFBC_CONTROL2; - uint32_t saveFBC_CONTROL; - uint32_t saveFBC_FENCE_OFF; -+ uint32_t saveRENCLK_GATE_D1; -+ uint32_t saveRENCLK_GATE_D2; -+ uint32_t saveDSPCLK_GATE_D; -+ uint32_t saveRAMCLK_GATE_D; - - enum last_3d *last_3d; - -diff --git a/src/i830_driver.c b/src/i830_driver.c -index 862ddde..33c49e3 100644 ---- a/src/i830_driver.c -+++ b/src/i830_driver.c -@@ -1499,8 +1499,6 @@ I830PreInit(ScrnInfoPtr pScrn, int flags) - - i830TakeRegSnapshot(pScrn); - -- i830_init_clock_gating(pScrn); -- - if (DEVICE_ID(pI830->PciInfo) == PCI_CHIP_E7221_G) - num_pipe = 1; - else -@@ -2063,6 +2061,14 @@ SaveHWState(ScrnInfoPtr pScrn) - pI830->saveSWF[15] = INREG(SWF31); - pI830->saveSWF[16] = INREG(SWF32); - -+ pI830->saveDSPCLK_GATE_D = INREG(DSPCLK_GATE_D); -+ pI830->saveRENCLK_GATE_D1 = INREG(RENCLK_GATE_D1); -+ -+ if (IS_I965G(pI830)) { -+ pI830->saveRENCLK_GATE_D2 = INREG(RENCLK_GATE_D2); -+ pI830->saveRAMCLK_GATE_D = INREG(RAMCLK_GATE_D); -+ } -+ - if (IS_MOBILE(pI830) && !IS_I830(pI830)) - pI830->saveLVDS = INREG(LVDS); - pI830->savePFIT_CONTROL = INREG(PFIT_CONTROL); -@@ -2120,6 +2126,14 @@ RestoreHWState(ScrnInfoPtr pScrn) - if (!IS_I830(pI830) && !IS_845G(pI830)) - OUTREG(PFIT_CONTROL, pI830->savePFIT_CONTROL); - -+ OUTREG(DSPCLK_GATE_D, pI830->saveDSPCLK_GATE_D); -+ OUTREG(RENCLK_GATE_D1, pI830->saveRENCLK_GATE_D1); -+ -+ if (IS_I965G(pI830)) { -+ OUTREG(RENCLK_GATE_D2, pI830->saveRENCLK_GATE_D2); -+ OUTREG(RAMCLK_GATE_D, pI830->saveRAMCLK_GATE_D); -+ } -+ - /* - * Pipe regs - * To restore the saved state, we first need to program the PLL regs, -@@ -3113,13 +3127,6 @@ I830ScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) - xf86ShowUnusedOptions(pScrn->scrnIndex, pScrn->options); - - if (IS_I965G(pI830)) { -- /* turn off clock gating */ --#if 0 -- OUTREG(0x6204, 0x70804000); -- OUTREG(0x6208, 0x00000001); --#else -- OUTREG(0x6204, 0x70000000); --#endif - /* Enable DAP stateless accesses. - * Required for all i965 steppings. - */ -@@ -3302,6 +3309,8 @@ I830EnterVT(int scrnIndex, int flags) - /* Tell the BIOS that we're in control of mode setting now. */ - i830_init_bios_control(pScrn); - -+ i830_init_clock_gating(pScrn); -+ - /* Clear the framebuffer */ - memset(pI830->FbBase + pScrn->fbOffset, 0, - pScrn->virtualY * pScrn->displayWidth * pI830->cpp); --- -1.5.5.3 - diff --git a/x11-drivers/xf86-video-i810/files/2.3.1/0019-Remove-SVG_WORK_CONTROL-init.patch b/x11-drivers/xf86-video-i810/files/2.3.1/0019-Remove-SVG_WORK_CONTROL-init.patch deleted file mode 100644 index 08211531ee81..000000000000 --- a/x11-drivers/xf86-video-i810/files/2.3.1/0019-Remove-SVG_WORK_CONTROL-init.patch +++ /dev/null @@ -1,29 +0,0 @@ -From e520316dd5f7bfdffadfa19b3046ba40ca367219 Mon Sep 17 00:00:00 2001 -From: Eric Anholt <eric@anholt.net> -Date: Thu, 5 Jun 2008 14:37:59 -0700 -Subject: [PATCH] Remove SVG_WORK_CONTROL init. - -The bit set is now reserved -- used to be a workaround for early revisions. -(cherry picked from commit ad459b21b7de4a79552ac155803d5930432fb84b) - -diff --git a/src/i830_driver.c b/src/i830_driver.c -index 33c49e3..cff1fe8 100644 ---- a/src/i830_driver.c -+++ b/src/i830_driver.c -@@ -3126,13 +3126,6 @@ I830ScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) - if (serverGeneration == 1) - xf86ShowUnusedOptions(pScrn->scrnIndex, pScrn->options); - -- if (IS_I965G(pI830)) { -- /* Enable DAP stateless accesses. -- * Required for all i965 steppings. -- */ -- OUTREG(SVG_WORK_CTL, 0x00000010); -- } -- - pI830->starting = FALSE; - pI830->closing = FALSE; - pI830->suspended = FALSE; --- -1.5.5.3 - diff --git a/x11-drivers/xf86-video-i810/files/2.3.1/0020-Move-debug-clock-printout-from-ErrorF-to-X_INFO.patch b/x11-drivers/xf86-video-i810/files/2.3.1/0020-Move-debug-clock-printout-from-ErrorF-to-X_INFO.patch deleted file mode 100644 index bf3904021ed1..000000000000 --- a/x11-drivers/xf86-video-i810/files/2.3.1/0020-Move-debug-clock-printout-from-ErrorF-to-X_INFO.patch +++ /dev/null @@ -1,54 +0,0 @@ -From 4054725c3cf0956cc1717ad8acc558203a7af40d Mon Sep 17 00:00:00 2001 -From: Eric Anholt <eric@anholt.net> -Date: Thu, 5 Jun 2008 14:55:23 -0700 -Subject: [PATCH] Move debug clock printout from ErrorF to X_INFO. - (cherry picked from commit bff180e6cac4452ef491c81855eb12bfa03d0bf3) - - -diff --git a/src/i830_display.c b/src/i830_display.c -index 4910d96..df2f1a2 100644 ---- a/src/i830_display.c -+++ b/src/i830_display.c -@@ -241,13 +241,15 @@ static void intel_clock(I830Ptr pI830, int refclk, intel_clock_t *clock) - } - - static void --i830PrintPll(char *prefix, intel_clock_t *clock) -+i830PrintPll(ScrnInfoPtr pScrn, char *prefix, intel_clock_t *clock) - { -- ErrorF("%s: dotclock %d vco %d ((m %d, m1 %d, m2 %d), n %d, (p %d, p1 %d, p2 %d))\n", -- prefix, clock->dot, clock->vco, -- clock->m, clock->m1, clock->m2, -- clock->n, -- clock->p, clock->p1, clock->p2); -+ xf86DrvMsg(pScrn->scrnIndex, X_INFO, -+ "%s: dotclock %d vco %d ((m %d, m1 %d, m2 %d), n %d, " -+ "(p %d, p1 %d, p2 %d))\n", -+ prefix, clock->dot, clock->vco, -+ clock->m, clock->m1, clock->m2, -+ clock->n, -+ clock->p, clock->p1, clock->p2); - } - - /** -@@ -1262,7 +1264,7 @@ i830_crtc_mode_set(xf86CrtcPtr crtc, DisplayModePtr mode, - "Adjusted mode for pipe %c:\n", pipe == 0 ? 'A' : 'B'); - xf86PrintModeline(pScrn->scrnIndex, adjusted_mode); - } -- i830PrintPll("chosen", &clock); -+ i830PrintPll(pScrn, "chosen", &clock); - } - - if (dpll & DPLL_VCO_ENABLE) -@@ -1755,7 +1757,7 @@ i830_crtc_clock_get(ScrnInfoPtr pScrn, xf86CrtcPtr crtc) - * configuration being accurate, which it isn't necessarily. - */ - if (0) -- i830PrintPll("probed", &clock); -+ i830PrintPll(pScrn, "probed", &clock); - - return clock.dot; - } --- -1.5.5.3 - diff --git a/x11-drivers/xf86-video-i810/files/2.3.1/0021-Fix-TV-out-connection-type-detection.patch b/x11-drivers/xf86-video-i810/files/2.3.1/0021-Fix-TV-out-connection-type-detection.patch deleted file mode 100644 index 125442ca4a08..000000000000 --- a/x11-drivers/xf86-video-i810/files/2.3.1/0021-Fix-TV-out-connection-type-detection.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 7d9676c8cc309d42c49f82274f7dc43ab327bea3 Mon Sep 17 00:00:00 2001 -From: Robert Lowery <rglowery@exemail.com.au> -Date: Tue, 20 May 2008 21:09:23 +1000 -Subject: [PATCH] Fix TV out connection type detection - -Make sure we wait for vblank when using the TV DAC to detect the connection -type. - -Fixes FDO bug #14000. -(cherry picked from commit 64a8f2433d7774d06119793b57cec6d3be6389c1) -(cherry picked from commit e4e61e8c97c585993b4b69b86350b3987178a47e) - -diff --git a/src/i830_tv.c b/src/i830_tv.c -index 6adb9f2..2fc6199 100644 ---- a/src/i830_tv.c -+++ b/src/i830_tv.c -@@ -1303,6 +1303,7 @@ i830_tv_detect_type (xf86CrtcPtr crtc, - tv_dac = INREG(TV_DAC); - OUTREG(TV_DAC, save_tv_dac); - OUTREG(TV_CTL, save_tv_ctl); -+ i830WaitForVblank(pScrn); - } - /* - * A B C --- -1.5.5.3 - diff --git a/x11-drivers/xf86-video-i810/files/2.3.1/0022-Fix-TV-programming-add-vblank-wait-after-TV_CTL-wr.patch b/x11-drivers/xf86-video-i810/files/2.3.1/0022-Fix-TV-programming-add-vblank-wait-after-TV_CTL-wr.patch deleted file mode 100644 index 7c5a6c5c9de8..000000000000 --- a/x11-drivers/xf86-video-i810/files/2.3.1/0022-Fix-TV-programming-add-vblank-wait-after-TV_CTL-wr.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 9a8d70fe3d1db2e2d34c79b7d0b271127a63e415 Mon Sep 17 00:00:00 2001 -From: Jesse Barnes <jbarnes@hobbes.lan> -Date: Mon, 9 Jun 2008 08:52:59 -0700 -Subject: [PATCH] Fix TV programming: add vblank wait after TV_CTL writes - -Fxies FDO bug #14000; we need to wait for vblank after writing TV_CTL or followi -ng "DPMS on" calls may not actually enable the output. -(cherry picked from commit 1142be53eb8d2ee8a9b60ace5d49f0ba27332275) - -diff --git a/src/i830_tv.c b/src/i830_tv.c -index 2fc6199..cde929a 100644 ---- a/src/i830_tv.c -+++ b/src/i830_tv.c -@@ -788,6 +788,7 @@ i830_tv_dpms(xf86OutputPtr output, int mode) - OUTREG(TV_CTL, INREG(TV_CTL) & ~TV_ENC_ENABLE); - break; - } -+ i830WaitForVblank(pScrn); - } - - static void -@@ -920,6 +921,7 @@ i830_tv_restore(xf86OutputPtr output) - - OUTREG(TV_DAC, dev_priv->save_TV_DAC); - OUTREG(TV_CTL, dev_priv->save_TV_CTL); -+ i830WaitForVblank(pScrn); - } - - static const tv_mode_t * -@@ -1237,6 +1239,7 @@ i830_tv_mode_set(xf86OutputPtr output, DisplayModePtr mode, - OUTREG(TV_V_CHROMA_0 + (i<<2), tv_mode->filter_table[j++]); - OUTREG(TV_DAC, 0); - OUTREG(TV_CTL, tv_ctl); -+ i830WaitForVblank(pScrn); - } - - static const DisplayModeRec reported_modes[] = { --- -1.5.5.3 - diff --git a/x11-drivers/xf86-video-i810/files/2.3.1/0023-Two-more-Dell-quirks.patch b/x11-drivers/xf86-video-i810/files/2.3.1/0023-Two-more-Dell-quirks.patch deleted file mode 100644 index cf5f9d48890f..000000000000 --- a/x11-drivers/xf86-video-i810/files/2.3.1/0023-Two-more-Dell-quirks.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 9d767d62fec724079178844915cd3feb9df93c7e Mon Sep 17 00:00:00 2001 -From: Bryce Harrington <bryce@bryceharrington.org> -Date: Tue, 10 Jun 2008 14:10:39 +0800 -Subject: [PATCH] Two more Dell quirks - -fd.o #16160 -(cherry picked from commit 231a302013981cc597ba09ee89b367c8ab56e8ba) - -diff --git a/src/i830_quirks.c b/src/i830_quirks.c -index b1c1423..1bd8885 100644 ---- a/src/i830_quirks.c -+++ b/src/i830_quirks.c -@@ -237,6 +237,8 @@ static i830_quirk i830_quirk_list[] = { - { PCI_CHIP_I965_GM, 0x1028, 0x0256, quirk_ignore_tv }, - /* Dell Inspiron 1318 */ - { PCI_CHIP_I965_GM, 0x1028, 0x0286, quirk_ignore_tv }, -+ /* Dell Vostro A840 (LP: #235155) */ -+ { PCI_CHIP_I965_GM, 0x1028, 0x0298, quirk_ignore_tv }, - - /* Lenovo Napa TV (use dmi)*/ - { PCI_CHIP_I945_GM, 0x17aa, SUBSYS_ANY, quirk_lenovo_tv_dmi }, -@@ -272,6 +274,8 @@ static i830_quirk i830_quirk_list[] = { - { PCI_CHIP_I855_GM, 0x1028, 0x0139, quirk_pipea_force }, - /* Dell Latitude D500 needs pipe A force quirk */ - { PCI_CHIP_I855_GM, 0x1028, 0x0152, quirk_pipea_force }, -+ /* Dell Latitude D505 needs pipe A force quirk (LP: #235643) */ -+ { PCI_CHIP_I855_GM, 0x1028, 0x0163, quirk_pipea_force }, - /* Dell Latitude X300 needs pipe A force quirk */ - { PCI_CHIP_I855_GM, 0x1028, 0x014f, quirk_pipea_force }, - /* Dell Inspiron 510m needs pipe A force quirk */ --- -1.5.5.3 - diff --git a/x11-drivers/xf86-video-i810/files/2.3.1/0024-Set-up-restore-PWRCTXA-from-enter-leavevt-not-server.patch b/x11-drivers/xf86-video-i810/files/2.3.1/0024-Set-up-restore-PWRCTXA-from-enter-leavevt-not-server.patch deleted file mode 100644 index e1f9c08edac6..000000000000 --- a/x11-drivers/xf86-video-i810/files/2.3.1/0024-Set-up-restore-PWRCTXA-from-enter-leavevt-not-server.patch +++ /dev/null @@ -1,77 +0,0 @@ -From d3df74ebb0b61cda347e5e4754f2fc8a4c3110b0 Mon Sep 17 00:00:00 2001 -From: Eric Anholt <eric@anholt.net> -Date: Tue, 10 Jun 2008 11:31:22 -0700 -Subject: [PATCH] Set up/restore PWRCTXA from enter/leavevt not server start/exit. - -This should improve behavior in the presence of VT switching, but also avoids -a crash on X exit from writing the register after unmapping mmio. - -diff --git a/src/i830.h b/src/i830.h -index a96fa5b..def693f 100644 ---- a/src/i830.h -+++ b/src/i830.h -@@ -649,6 +649,7 @@ typedef struct _I830Rec { - uint32_t saveRENCLK_GATE_D2; - uint32_t saveDSPCLK_GATE_D; - uint32_t saveRAMCLK_GATE_D; -+ uint32_t savePWRCTXA; - - enum last_3d *last_3d; - -diff --git a/src/i830_driver.c b/src/i830_driver.c -index cff1fe8..563d167 100644 ---- a/src/i830_driver.c -+++ b/src/i830_driver.c -@@ -2069,6 +2069,9 @@ SaveHWState(ScrnInfoPtr pScrn) - pI830->saveRAMCLK_GATE_D = INREG(RAMCLK_GATE_D); - } - -+ if (IS_I965GM(pI830) || IS_IGD_GM(pI830)) -+ pI830->savePWRCTXA = INREG(PWRCTXA); -+ - if (IS_MOBILE(pI830) && !IS_I830(pI830)) - pI830->saveLVDS = INREG(LVDS); - pI830->savePFIT_CONTROL = INREG(PFIT_CONTROL); -@@ -2134,6 +2137,9 @@ RestoreHWState(ScrnInfoPtr pScrn) - OUTREG(RAMCLK_GATE_D, pI830->saveRAMCLK_GATE_D); - } - -+ if (IS_I965GM(pI830) || IS_IGD_GM(pI830)) -+ OUTREG(PWRCTXA, pI830->savePWRCTXA); -+ - /* - * Pipe regs - * To restore the saved state, we first need to program the PLL regs, -@@ -2846,9 +2852,6 @@ I830ScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) - return FALSE; - } - -- if (pI830->power_context) -- OUTREG(PWRCTXA, pI830->power_context->offset | PWRCTX_EN); -- - I830UnmapMMIO(pScrn); - - i830_fixup_mtrrs(pScrn); -@@ -3304,6 +3307,9 @@ I830EnterVT(int scrnIndex, int flags) - - i830_init_clock_gating(pScrn); - -+ if (pI830->power_context) -+ OUTREG(PWRCTXA, pI830->power_context->offset | PWRCTX_EN); -+ - /* Clear the framebuffer */ - memset(pI830->FbBase + pScrn->fbOffset, 0, - pScrn->virtualY * pScrn->displayWidth * pI830->cpp); -@@ -3459,9 +3465,6 @@ I830CloseScreen(int scrnIndex, ScreenPtr pScreen) - } - #endif - -- if (IS_I965GM(pI830) || IS_IGD_GM(pI830)) -- OUTREG(PWRCTXA, 0); -- - if (I830IsPrimary(pScrn)) { - xf86GARTCloseScreen(scrnIndex); - --- -1.5.5.3 - diff --git a/x11-drivers/xf86-video-i810/files/2.3.1/0025-Fix-compiler-warning-when-disable-xvmc-config.patch b/x11-drivers/xf86-video-i810/files/2.3.1/0025-Fix-compiler-warning-when-disable-xvmc-config.patch deleted file mode 100644 index f037f467ce2a..000000000000 --- a/x11-drivers/xf86-video-i810/files/2.3.1/0025-Fix-compiler-warning-when-disable-xvmc-config.patch +++ /dev/null @@ -1,26 +0,0 @@ -From df0bbdc7cbb6ff357a81ed28d12e56c9c7d643f7 Mon Sep 17 00:00:00 2001 -From: Zhenyu Wang <zhenyu.z.wang@intel.com> -Date: Thu, 12 Jun 2008 14:04:41 +0800 -Subject: [PATCH] Fix compiler warning when disable xvmc config - - -diff --git a/src/i830_memory.c b/src/i830_memory.c -index 9ceb254..ccbe7bd 100644 ---- a/src/i830_memory.c -+++ b/src/i830_memory.c -@@ -2020,6 +2020,7 @@ I830CheckAvailableMemory(ScrnInfoPtr pScrn) - return maxPages * 4; - } - -+#ifdef INTEL_XVMC - /* - * Allocate memory for MC compensation - */ -@@ -2041,3 +2042,4 @@ Bool i830_allocate_xvmc_buffer(ScrnInfoPtr pScrn, const char *name, - - return TRUE; - } -+#endif --- -1.5.5.3 - |