summaryrefslogtreecommitdiffstats
path: root/x11-drivers
diff options
context:
space:
mode:
authormiwi <miwi@058c260c-8361-11dd-a0ac-aa2bafec7d09>2010-03-11 18:04:00 +0800
committermiwi <miwi@058c260c-8361-11dd-a0ac-aa2bafec7d09>2010-03-11 18:04:00 +0800
commit8488d855dd950964dae5aa019e89e461dda70857 (patch)
tree613bb60e84b4ca8bb5c25ad9f8f2982c042f0726 /x11-drivers
parent88154df4990180e4d856044b78e01d2d4dd25ad3 (diff)
downloadxorg-devel-ports-8488d855dd950964dae5aa019e89e461dda70857.tar
xorg-devel-ports-8488d855dd950964dae5aa019e89e461dda70857.tar.gz
xorg-devel-ports-8488d855dd950964dae5aa019e89e461dda70857.tar.bz2
xorg-devel-ports-8488d855dd950964dae5aa019e89e461dda70857.tar.lz
xorg-devel-ports-8488d855dd950964dae5aa019e89e461dda70857.tar.xz
xorg-devel-ports-8488d855dd950964dae5aa019e89e461dda70857.tar.zst
xorg-devel-ports-8488d855dd950964dae5aa019e89e461dda70857.zip
- Add intel driver 2.7.1 with support for xorg-server 1.7.5
git-svn-id: https://trillian.chruetertee.ch/svn/ports/branches/xorg-dev@123 058c260c-8361-11dd-a0ac-aa2bafec7d09
Diffstat (limited to 'x11-drivers')
-rw-r--r--x11-drivers/xf86-video-intel/Makefile25
-rw-r--r--x11-drivers/xf86-video-intel/distinfo3
-rw-r--r--x11-drivers/xf86-video-intel/files/patch-src_ch7017_ch7017.c17
-rw-r--r--x11-drivers/xf86-video-intel/files/patch-src_ch7xxx_ch7xxx.c17
-rw-r--r--x11-drivers/xf86-video-intel/files/patch-src_i810_driver.c111
-rw-r--r--x11-drivers/xf86-video-intel/files/patch-src_i810_hwmc.c10
-rw-r--r--x11-drivers/xf86-video-intel/files/patch-src_i810_video.c10
-rw-r--r--x11-drivers/xf86-video-intel/files/patch-src_i830_dri.c14
-rw-r--r--x11-drivers/xf86-video-intel/files/patch-src_i830_driver.c97
-rw-r--r--x11-drivers/xf86-video-intel/files/patch-src_i830_i2c.c11
-rw-r--r--x11-drivers/xf86-video-intel/files/patch-src_i830_render.c78
-rw-r--r--x11-drivers/xf86-video-intel/files/patch-src_i830_video.c10
-rw-r--r--x11-drivers/xf86-video-intel/files/patch-src_i915_hwmc.c10
-rw-r--r--x11-drivers/xf86-video-intel/files/patch-src_i915_render.c69
-rw-r--r--x11-drivers/xf86-video-intel/files/patch-src_i965_render.c78
-rw-r--r--x11-drivers/xf86-video-intel/files/patch-src_ivch_ivch.c17
-rw-r--r--x11-drivers/xf86-video-intel/files/patch-src_sil164_sil164.c17
-rw-r--r--x11-drivers/xf86-video-intel/files/patch-src_tfp410_tfp410.c17
-rw-r--r--x11-drivers/xf86-video-intel/files/patch-uxa_uxa-priv.h32
-rw-r--r--x11-drivers/xf86-video-intel/pkg-descr3
-rw-r--r--x11-drivers/xf86-video-intel/pkg-plist21
21 files changed, 667 insertions, 0 deletions
diff --git a/x11-drivers/xf86-video-intel/Makefile b/x11-drivers/xf86-video-intel/Makefile
new file mode 100644
index 0000000..e079462
--- /dev/null
+++ b/x11-drivers/xf86-video-intel/Makefile
@@ -0,0 +1,25 @@
+# New ports collection makefile for: xf86-video-intel
+# Date Created: 28 May 2007
+# Whom: lesi@FreeBSD.org
+#
+# $FreeBSD: ports/x11-drivers/xf86-video-intel/Makefile,v 1.15 2009/05/13 00:35:27 rnoland Exp $
+#
+
+PORTNAME= xf86-video-intel
+PORTVERSION= 2.7.1
+PORTREVISION= 2
+CATEGORIES= x11-drivers
+
+MAINTAINER= x11@FreeBSD.org
+COMMENT= Driver for Intel integrated graphics chipsets
+
+CONFLICTS= xf86-video-i810-[0-9]*
+
+ONLY_FOR_ARCHS= amd64 i386
+USE_GL= gl
+
+XORG_CAT= driver
+USE_XORG= xvmc xineramaproto xextproto x11 xf86driproto glproto
+MAN4= intel.4x
+
+.include <bsd.port.mk>
diff --git a/x11-drivers/xf86-video-intel/distinfo b/x11-drivers/xf86-video-intel/distinfo
new file mode 100644
index 0000000..954e3df
--- /dev/null
+++ b/x11-drivers/xf86-video-intel/distinfo
@@ -0,0 +1,3 @@
+MD5 (xorg/driver/xf86-video-intel-2.7.1.tar.bz2) = 0eed17138da18ff1fb2b8ab0f076d957
+SHA256 (xorg/driver/xf86-video-intel-2.7.1.tar.bz2) = 255c0d54249cc0132f743254a43c21fac695fab2139c8ed96a07cf3c628e5f42
+SIZE (xorg/driver/xf86-video-intel-2.7.1.tar.bz2) = 780625
diff --git a/x11-drivers/xf86-video-intel/files/patch-src_ch7017_ch7017.c b/x11-drivers/xf86-video-intel/files/patch-src_ch7017_ch7017.c
new file mode 100644
index 0000000..278354a
--- /dev/null
+++ b/x11-drivers/xf86-video-intel/files/patch-src_ch7017_ch7017.c
@@ -0,0 +1,17 @@
+--- src/ch7017/ch7017.c.orig 2009-04-08 18:59:47.000000000 -0500
++++ src/ch7017/ch7017.c 2010-02-21 12:40:12.000000000 -0600
+@@ -34,13 +34,11 @@
+
+ #include "xf86.h"
+ #include "xf86_OSproc.h"
+-#include "xf86Resources.h"
+ #include "compiler.h"
+ #include "miscstruct.h"
+ #include "xf86i2c.h"
+ #include "xf86Crtc.h"
+-#define DPMS_SERVER
+-#include <X11/extensions/dpms.h>
++#include <X11/extensions/dpmsconst.h>
+
+ #include "../i2c_vid.h"
+ #include "ch7017_reg.h"
diff --git a/x11-drivers/xf86-video-intel/files/patch-src_ch7xxx_ch7xxx.c b/x11-drivers/xf86-video-intel/files/patch-src_ch7xxx_ch7xxx.c
new file mode 100644
index 0000000..6dbc0a7
--- /dev/null
+++ b/x11-drivers/xf86-video-intel/files/patch-src_ch7xxx_ch7xxx.c
@@ -0,0 +1,17 @@
+--- src/ch7xxx/ch7xxx.c.orig 2010-02-21 12:42:11.000000000 -0600
++++ src/ch7xxx/ch7xxx.c 2010-02-21 12:44:40.000000000 -0600
+@@ -34,13 +34,11 @@
+ #include <string.h>
+ #include "xf86.h"
+ #include "xf86_OSproc.h"
+-#include "xf86Resources.h"
+ #include "compiler.h"
+ #include "miscstruct.h"
+ #include "xf86i2c.h"
+ #include "xf86Crtc.h"
+-#define DPMS_SERVER
+-#include <X11/extensions/dpms.h>
++#include <X11/extensions/dpmsconst.h>
+
+ #include "../i2c_vid.h"
+ #include "ch7xxx.h"
diff --git a/x11-drivers/xf86-video-intel/files/patch-src_i810_driver.c b/x11-drivers/xf86-video-intel/files/patch-src_i810_driver.c
new file mode 100644
index 0000000..5ccb55a
--- /dev/null
+++ b/x11-drivers/xf86-video-intel/files/patch-src_i810_driver.c
@@ -0,0 +1,111 @@
+--- src/i810_driver.c.orig 2010-02-21 12:55:16.000000000 -0600
++++ src/i810_driver.c 2010-02-21 13:17:04.000000000 -0600
+@@ -69,8 +69,6 @@
+ */
+ #include "xf86.h"
+ #include "xf86_OSproc.h"
+-#include "xf86Resources.h"
+-#include "xf86RAC.h"
+ #include "xf86cmap.h"
+ #include "compiler.h"
+ #include "mibstore.h"
+@@ -490,20 +488,6 @@
+ );
+
+ /*
+- * Tell the loader about symbols from other modules that this module
+- * might refer to.
+- */
+- LoaderRefSymLists(I810vgahwSymbols,
+- I810fbSymbols, I810xaaSymbols, I810ramdacSymbols,
+-#ifdef XF86DRI
+- I810drmSymbols,
+- I810driSymbols,
+-#endif
+- I810shadowFBSymbols,
+- I810vbeSymbols, vbeOptionalSymbols,
+- I810ddcSymbols, NULL);
+-
+- /*
+ * The return value must be non-NULL on success even though there
+ * is no TearDownProc.
+ */
+@@ -809,7 +793,6 @@
+ }
+
+ if (xf86LoadSubModule(pScrn, "vbe") && (pVbe = VBEInit(NULL, index))) {
+- xf86LoaderReqSymLists(I810vbeSymbols, NULL);
+ MonInfo = vbeDoEDID(pVbe, NULL);
+ xf86PrintEDID(MonInfo);
+ xf86SetDDCproperties(pScrn, MonInfo);
+@@ -864,8 +847,6 @@
+ if (!xf86LoadSubModule(pScrn, "vgahw"))
+ return FALSE;
+
+- xf86LoaderReqSymLists(I810vgahwSymbols, NULL);
+-
+ /* Allocate a vgaHWRec */
+ if (!vgaHWGetHWRec(pScrn))
+ return FALSE;
+@@ -878,10 +859,6 @@
+ pI810->PciInfo->func);
+ #endif
+
+- if (xf86RegisterResources(pI810->pEnt->index, NULL, ResNone))
+- return FALSE;
+- pScrn->racMemFlags = RAC_FB | RAC_COLORMAP;
+-
+ /* Set pScrn->monitor */
+ pScrn->monitor = pScrn->confScreen->monitor;
+
+@@ -960,7 +937,6 @@
+ I810FreeRec(pScrn);
+ return FALSE;
+ }
+- xf86LoaderReqSymLists(I810xaaSymbols, NULL);
+ }
+
+ #ifdef XF86DRI
+@@ -1244,14 +1220,12 @@
+ I810FreeRec(pScrn);
+ return FALSE;
+ }
+- xf86LoaderReqSymLists(I810fbSymbols, NULL);
+
+ if (!xf86ReturnOptValBool(pI810->Options, OPTION_SW_CURSOR, FALSE)) {
+ if (!xf86LoadSubModule(pScrn, "ramdac")) {
+ I810FreeRec(pScrn);
+ return FALSE;
+ }
+- xf86LoaderReqSymLists(I810ramdacSymbols, NULL);
+ }
+
+ if (xf86GetOptValInteger
+@@ -1278,9 +1252,6 @@
+ xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
+ "Couldn't load shadowfb module:\n");
+ }
+- else {
+- xf86LoaderReqSymLists(I810shadowFBSymbols, NULL);
+- }
+ }
+
+ xf86DrvMsg(pScrn->scrnIndex, X_CONFIG, "page flipping %s\n",
+@@ -1312,16 +1283,12 @@
+ #ifdef XF86DRI
+ /* Load the dri module if requested. */
+ if (xf86ReturnOptValBool(pI810->Options, OPTION_DRI, FALSE)) {
+- if (xf86LoadSubModule(pScrn, "dri")) {
+- xf86LoaderReqSymLists(I810driSymbols, I810drmSymbols, NULL);
+- }
++ xf86LoadSubModule(pScrn, "dri");
+ }
+ #endif
+
+ /* We won't be using the VGA access after the probe */
+ I810SetMMIOAccess(pI810);
+- xf86SetOperatingState(resVgaIo, pI810->pEnt->index, ResUnusedOpr);
+- xf86SetOperatingState(resVgaMem, pI810->pEnt->index, ResDisableOpr);
+
+ return TRUE;
+ }
diff --git a/x11-drivers/xf86-video-intel/files/patch-src_i810_hwmc.c b/x11-drivers/xf86-video-intel/files/patch-src_i810_hwmc.c
new file mode 100644
index 0000000..ffb2ac3
--- /dev/null
+++ b/x11-drivers/xf86-video-intel/files/patch-src_i810_hwmc.c
@@ -0,0 +1,10 @@
+--- src/i810_hwmc.c.orig 2010-02-21 13:40:44.000000000 -0600
++++ src/i810_hwmc.c 2010-02-21 13:41:16.000000000 -0600
+@@ -42,7 +42,6 @@
+
+ #include "xf86.h"
+ #include "xf86_OSproc.h"
+-#include "xf86Resources.h"
+ #include "compiler.h"
+ #include "xf86PciInfo.h"
+ #include "xf86Pci.h"
diff --git a/x11-drivers/xf86-video-intel/files/patch-src_i810_video.c b/x11-drivers/xf86-video-intel/files/patch-src_i810_video.c
new file mode 100644
index 0000000..c10b5e6
--- /dev/null
+++ b/x11-drivers/xf86-video-intel/files/patch-src_i810_video.c
@@ -0,0 +1,10 @@
+--- src/i810_video.c.orig 2010-02-21 13:17:58.000000000 -0600
++++ src/i810_video.c 2010-02-21 13:18:37.000000000 -0600
+@@ -42,7 +42,6 @@
+
+ #include "xf86.h"
+ #include "xf86_OSproc.h"
+-#include "xf86Resources.h"
+ #include "compiler.h"
+ #include "xf86PciInfo.h"
+ #include "xf86Pci.h"
diff --git a/x11-drivers/xf86-video-intel/files/patch-src_i830_dri.c b/x11-drivers/xf86-video-intel/files/patch-src_i830_dri.c
new file mode 100644
index 0000000..05bdb93
--- /dev/null
+++ b/x11-drivers/xf86-video-intel/files/patch-src_i830_dri.c
@@ -0,0 +1,14 @@
+--- src/i830_dri.c.orig 2010-02-21 13:30:37.000000000 -0600
++++ src/i830_dri.c 2010-02-21 13:39:02.000000000 -0600
+@@ -1731,9 +1731,10 @@
+ info.driverName = IS_I965G(pI830) ? "i965" : "i915";
+ info.deviceName = p;
+ info.version = 1;
+-
++#if 0
+ info.CreateBuffers = I830DRI2CreateBuffers;
+ info.DestroyBuffers = I830DRI2DestroyBuffers;
++#endif
+ info.CopyRegion = I830DRI2CopyRegion;
+
+ pI830->drmSubFD = info.fd;
diff --git a/x11-drivers/xf86-video-intel/files/patch-src_i830_driver.c b/x11-drivers/xf86-video-intel/files/patch-src_i830_driver.c
new file mode 100644
index 0000000..776b67f
--- /dev/null
+++ b/x11-drivers/xf86-video-intel/files/patch-src_i830_driver.c
@@ -0,0 +1,97 @@
+--- src/i830_driver.c.orig 2010-02-21 13:20:12.000000000 -0600
++++ src/i830_driver.c 2010-02-21 13:26:14.000000000 -0600
+@@ -175,8 +175,6 @@
+
+ #include "xf86.h"
+ #include "xf86_OSproc.h"
+-#include "xf86Resources.h"
+-#include "xf86RAC.h"
+ #include "xf86Priv.h"
+ #include "xf86cmap.h"
+ #include "compiler.h"
+@@ -1050,7 +1048,6 @@
+ if (!xf86LoadSubModule(pScrn, "ddc")) {
+ pI830->ddc2 = FALSE;
+ } else {
+- xf86LoaderReqSymLists(I810ddcSymbols, NULL);
+ pI830->ddc2 = TRUE;
+ }
+
+@@ -1058,8 +1055,6 @@
+ /* Load I2C if we have the code to use it */
+ if (pI830->ddc2) {
+ if (xf86LoadSubModule(pScrn, "i2c")) {
+- xf86LoaderReqSymLists(I810i2cSymbols, NULL);
+-
+ pI830->ddc2 = TRUE;
+ } else {
+ pI830->ddc2 = FALSE;
+@@ -1511,11 +1506,9 @@
+ /* The vgahw module should be loaded here when needed */
+ if (!xf86LoadSubModule(pScrn, "vgahw"))
+ return FALSE;
+- xf86LoaderReqSymLists(I810vgahwSymbols, NULL);
+
+ if (!xf86LoadSubModule(pScrn, "ramdac"))
+ return FALSE;
+- xf86LoaderReqSymLists(I810ramdacSymbols, NULL);
+
+ return TRUE;
+ }
+@@ -1854,12 +1847,6 @@
+ pI830->PciInfo->func);
+ #endif
+
+- if (xf86RegisterResources(pI830->pEnt->index, NULL, ResNone)) {
+- PreInitCleanup(pScrn);
+- return FALSE;
+- }
+-
+- pScrn->racMemFlags = RAC_FB | RAC_COLORMAP;
+ pScrn->monitor = pScrn->confScreen->monitor;
+ pScrn->progClock = TRUE;
+ pScrn->rgbBits = 8;
+@@ -1942,8 +1929,6 @@
+ return FALSE;
+ }
+
+- xf86LoaderReqSymLists(I810fbSymbols, NULL);
+-
+ switch (pI830->accel) {
+ #ifdef I830_USE_XAA
+ case ACCEL_XAA:
+@@ -1951,7 +1936,6 @@
+ PreInitCleanup(pScrn);
+ return FALSE;
+ }
+- xf86LoaderReqSymLists(I810xaaSymbols, NULL);
+ break;
+ #endif
+
+@@ -1973,7 +1957,6 @@
+ PreInitCleanup(pScrn);
+ return FALSE;
+ }
+- xf86LoaderReqSymLists(I830exaSymbols, NULL);
+ break;
+ }
+ #endif
+@@ -1988,17 +1971,13 @@
+
+ /* We won't be using the VGA access after the probe. */
+ I830SetMMIOAccess(pI830);
+- xf86SetOperatingState(resVgaIo, pI830->pEnt->index, ResUnusedOpr);
+- xf86SetOperatingState(resVgaMem, pI830->pEnt->index, ResDisableOpr);
+ }
+
+ #if defined(XF86DRI)
+ /* Load the dri module if requested. */
+ if (xf86ReturnOptValBool(pI830->Options, OPTION_DRI, FALSE) &&
+ pI830->directRenderingType != DRI_DISABLED) {
+- if (xf86LoadSubModule(pScrn, "dri")) {
+- xf86LoaderReqSymLists(I810driSymbols, I810drmSymbols, NULL);
+- }
++ xf86LoadSubModule(pScrn, "dri");
+ }
+ #endif
+
diff --git a/x11-drivers/xf86-video-intel/files/patch-src_i830_i2c.c b/x11-drivers/xf86-video-intel/files/patch-src_i830_i2c.c
new file mode 100644
index 0000000..1f4461c
--- /dev/null
+++ b/x11-drivers/xf86-video-intel/files/patch-src_i830_i2c.c
@@ -0,0 +1,11 @@
+--- src/i830_i2c.c.orig 2010-02-21 13:27:07.000000000 -0600
++++ src/i830_i2c.c 2010-02-21 13:27:45.000000000 -0600
+@@ -31,8 +31,6 @@
+
+ #include "xf86.h"
+ #include "xf86_OSproc.h"
+-#include "xf86Resources.h"
+-#include "xf86RAC.h"
+ #include "xf86cmap.h"
+ #include "compiler.h"
+ #include "mibstore.h"
diff --git a/x11-drivers/xf86-video-intel/files/patch-src_i830_render.c b/x11-drivers/xf86-video-intel/files/patch-src_i830_render.c
new file mode 100644
index 0000000..e292a7d
--- /dev/null
+++ b/x11-drivers/xf86-video-intel/files/patch-src_i830_render.c
@@ -0,0 +1,78 @@
+--- src/i830_render.c.orig 2009-05-12 19:12:11.000000000 -0500
++++ src/i830_render.c 2010-03-07 15:30:45.000000000 -0600
+@@ -210,26 +210,8 @@
+ (dblend << S8_DST_BLEND_FACTOR_SHIFT);
+ }
+
+-static Bool i830_check_composite_texture(PicturePtr pPict, int unit)
++static Bool i830_check_composite_texture(ScrnInfoPtr pScrn, PicturePtr pPict, int unit)
+ {
+- ScrnInfoPtr pScrn = xf86Screens[pPict->pDrawable->pScreen->myNum];
+- int w = pPict->pDrawable->width;
+- int h = pPict->pDrawable->height;
+- int i;
+-
+- if ((w > 2048) || (h > 2048))
+- I830FALLBACK("Picture w/h too large (%dx%d)\n", w, h);
+-
+- for (i = 0; i < sizeof(i830_tex_formats) / sizeof(i830_tex_formats[0]);
+- i++)
+- {
+- if (i830_tex_formats[i].fmt == pPict->format)
+- break;
+- }
+- if (i == sizeof(i830_tex_formats) / sizeof(i830_tex_formats[0]))
+- I830FALLBACK("Unsupported picture format 0x%x\n",
+- (int)pPict->format);
+-
+ if (pPict->repeatType > RepeatReflect)
+ I830FALLBACK("Unsupported picture repeat %d\n", pPict->repeatType);
+
+@@ -239,6 +221,26 @@
+ I830FALLBACK("Unsupported filter 0x%x\n", pPict->filter);
+ }
+
++ if (pPict->pDrawable)
++ {
++ int w, h, i;
++
++ w = pPict->pDrawable->width;
++ h = pPict->pDrawable->height;
++ if ((w > 2048) || (h > 2048))
++ I830FALLBACK("Picture w/h too large (%dx%d)\n", w, h);
++
++ for (i = 0; i < sizeof(i830_tex_formats) / sizeof(i830_tex_formats[0]);
++ i++)
++ {
++ if (i830_tex_formats[i].fmt == pPict->format)
++ break;
++ }
++ if (i == sizeof(i830_tex_formats) / sizeof(i830_tex_formats[0]))
++ I830FALLBACK("Unsupported picture format 0x%x\n",
++ (int)pPict->format);
++ }
++
+ return TRUE;
+ }
+
+@@ -376,9 +378,9 @@
+ "alpha and source value blending.\n");
+ }
+
+- if (!i830_check_composite_texture(pSrcPicture, 0))
++ if (!i830_check_composite_texture(pScrn, pSrcPicture, 0))
+ I830FALLBACK("Check Src picture texture\n");
+- if (pMaskPicture != NULL && !i830_check_composite_texture(pMaskPicture, 1))
++ if (pMaskPicture != NULL && !i830_check_composite_texture(pScrn, pMaskPicture, 1))
+ I830FALLBACK("Check Mask picture texture\n");
+
+ if (!i830_get_dest_format(pDstPicture, &tmp1))
+@@ -392,7 +394,7 @@
+ PicturePtr pMaskPicture, PicturePtr pDstPicture,
+ PixmapPtr pSrc, PixmapPtr pMask, PixmapPtr pDst)
+ {
+- ScrnInfoPtr pScrn = xf86Screens[pSrcPicture->pDrawable->pScreen->myNum];
++ ScrnInfoPtr pScrn = xf86Screens[pDstPicture->pDrawable->pScreen->myNum];
+ I830Ptr pI830 = I830PTR(pScrn);
+ uint32_t dst_format, dst_pitch;
+ Bool is_affine_src, is_affine_mask;
diff --git a/x11-drivers/xf86-video-intel/files/patch-src_i830_video.c b/x11-drivers/xf86-video-intel/files/patch-src_i830_video.c
new file mode 100644
index 0000000..b93a98e
--- /dev/null
+++ b/x11-drivers/xf86-video-intel/files/patch-src_i830_video.c
@@ -0,0 +1,10 @@
+--- src/i830_video.c.orig 2010-02-21 13:28:37.000000000 -0600
++++ src/i830_video.c 2010-02-21 13:29:05.000000000 -0600
+@@ -57,7 +57,6 @@
+
+ #include "xf86.h"
+ #include "xf86_OSproc.h"
+-#include "xf86Resources.h"
+ #include "compiler.h"
+ #include "xf86PciInfo.h"
+ #include "xf86Pci.h"
diff --git a/x11-drivers/xf86-video-intel/files/patch-src_i915_hwmc.c b/x11-drivers/xf86-video-intel/files/patch-src_i915_hwmc.c
new file mode 100644
index 0000000..ab7f679
--- /dev/null
+++ b/x11-drivers/xf86-video-intel/files/patch-src_i915_hwmc.c
@@ -0,0 +1,10 @@
+--- src/i915_hwmc.c.orig 2010-02-21 13:42:21.000000000 -0600
++++ src/i915_hwmc.c 2010-02-21 13:42:38.000000000 -0600
+@@ -32,7 +32,6 @@
+
+ #include "xf86.h"
+ #include "xf86_OSproc.h"
+-#include "xf86Resources.h"
+ #include "compiler.h"
+ #include "xf86PciInfo.h"
+ #include "xf86Pci.h"
diff --git a/x11-drivers/xf86-video-intel/files/patch-src_i915_render.c b/x11-drivers/xf86-video-intel/files/patch-src_i915_render.c
new file mode 100644
index 0000000..53b1a0e
--- /dev/null
+++ b/x11-drivers/xf86-video-intel/files/patch-src_i915_render.c
@@ -0,0 +1,69 @@
+--- src/i915_render.c.orig 2009-05-12 19:12:11.000000000 -0500
++++ src/i915_render.c 2010-03-07 15:30:45.000000000 -0600
+@@ -167,26 +167,8 @@
+ return TRUE;
+ }
+
+-static Bool i915_check_composite_texture(PicturePtr pPict, int unit)
++static Bool i915_check_composite_texture(ScrnInfoPtr pScrn, PicturePtr pPict, int unit)
+ {
+- ScrnInfoPtr pScrn = xf86Screens[pPict->pDrawable->pScreen->myNum];
+- int w = pPict->pDrawable->width;
+- int h = pPict->pDrawable->height;
+- int i;
+-
+- if ((w > 2048) || (h > 2048))
+- I830FALLBACK("Picture w/h too large (%dx%d)\n", w, h);
+-
+- for (i = 0; i < sizeof(i915_tex_formats) / sizeof(i915_tex_formats[0]);
+- i++)
+- {
+- if (i915_tex_formats[i].fmt == pPict->format)
+- break;
+- }
+- if (i == sizeof(i915_tex_formats) / sizeof(i915_tex_formats[0]))
+- I830FALLBACK("Unsupported picture format 0x%x\n",
+- (int)pPict->format);
+-
+ if (pPict->repeatType > RepeatReflect)
+ I830FALLBACK("Unsupported picture repeat %d\n", pPict->repeatType);
+
+@@ -194,6 +176,26 @@
+ pPict->filter != PictFilterBilinear)
+ I830FALLBACK("Unsupported filter 0x%x\n", pPict->filter);
+
++ if (pPict->pDrawable)
++ {
++ int w, h, i;
++
++ w = pPict->pDrawable->width;
++ h = pPict->pDrawable->height;
++ if ((w > 2048) || (h > 2048))
++ I830FALLBACK("Picture w/h too large (%dx%d)\n", w, h);
++
++ for (i = 0; i < sizeof(i915_tex_formats) / sizeof(i915_tex_formats[0]);
++ i++)
++ {
++ if (i915_tex_formats[i].fmt == pPict->format)
++ break;
++ }
++ if (i == sizeof(i915_tex_formats) / sizeof(i915_tex_formats[0]))
++ I830FALLBACK("Unsupported picture format 0x%x\n",
++ (int)pPict->format);
++ }
++
+ return TRUE;
+ }
+
+@@ -220,9 +222,9 @@
+ "alpha and source value blending.\n");
+ }
+
+- if (!i915_check_composite_texture(pSrcPicture, 0))
++ if (!i915_check_composite_texture(pScrn, pSrcPicture, 0))
+ I830FALLBACK("Check Src picture texture\n");
+- if (pMaskPicture != NULL && !i915_check_composite_texture(pMaskPicture, 1))
++ if (pMaskPicture != NULL && !i915_check_composite_texture(pScrn, pMaskPicture, 1))
+ I830FALLBACK("Check Mask picture texture\n");
+
+ if (!i915_get_dest_format(pDstPicture, &tmp1))
diff --git a/x11-drivers/xf86-video-intel/files/patch-src_i965_render.c b/x11-drivers/xf86-video-intel/files/patch-src_i965_render.c
new file mode 100644
index 0000000..99b7d78
--- /dev/null
+++ b/x11-drivers/xf86-video-intel/files/patch-src_i965_render.c
@@ -0,0 +1,78 @@
+--- src/i965_render.c.orig 2009-05-12 19:12:11.000000000 -0500
++++ src/i965_render.c 2010-03-07 15:30:45.000000000 -0600
+@@ -181,26 +181,8 @@
+ return TRUE;
+ }
+
+-static Bool i965_check_composite_texture(PicturePtr pPict, int unit)
++static Bool i965_check_composite_texture(ScrnInfoPtr pScrn, PicturePtr pPict, int unit)
+ {
+- ScrnInfoPtr pScrn = xf86Screens[pPict->pDrawable->pScreen->myNum];
+- int w = pPict->pDrawable->width;
+- int h = pPict->pDrawable->height;
+- int i;
+-
+- if ((w > 8192) || (h > 8192))
+- I830FALLBACK("Picture w/h too large (%dx%d)\n", w, h);
+-
+- for (i = 0; i < sizeof(i965_tex_formats) / sizeof(i965_tex_formats[0]);
+- i++)
+- {
+- if (i965_tex_formats[i].fmt == pPict->format)
+- break;
+- }
+- if (i == sizeof(i965_tex_formats) / sizeof(i965_tex_formats[0]))
+- I830FALLBACK("Unsupported picture format 0x%x\n",
+- (int)pPict->format);
+-
+ if (pPict->repeatType > RepeatReflect)
+ I830FALLBACK("extended repeat (%d) not supported\n",
+ pPict->repeatType);
+@@ -211,6 +193,26 @@
+ I830FALLBACK("Unsupported filter 0x%x\n", pPict->filter);
+ }
+
++ if (pPict->pDrawable)
++ {
++ int w, h, i;
++
++ w = pPict->pDrawable->width;
++ h = pPict->pDrawable->height;
++ if ((w > 8192) || (h > 8192))
++ I830FALLBACK("Picture w/h too large (%dx%d)\n", w, h);
++
++ for (i = 0; i < sizeof(i965_tex_formats) / sizeof(i965_tex_formats[0]);
++ i++)
++ {
++ if (i965_tex_formats[i].fmt == pPict->format)
++ break;
++ }
++ if (i == sizeof(i965_tex_formats) / sizeof(i965_tex_formats[0]))
++ I830FALLBACK("Unsupported picture format 0x%x\n",
++ (int)pPict->format);
++ }
++
+ return TRUE;
+ }
+
+@@ -239,9 +241,9 @@
+ }
+ }
+
+- if (!i965_check_composite_texture(pSrcPicture, 0))
++ if (!i965_check_composite_texture(pScrn, pSrcPicture, 0))
+ I830FALLBACK("Check Src picture texture\n");
+- if (pMaskPicture != NULL && !i965_check_composite_texture(pMaskPicture, 1))
++ if (pMaskPicture != NULL && !i965_check_composite_texture(pScrn, pMaskPicture, 1))
+ I830FALLBACK("Check Mask picture texture\n");
+
+ if (!i965_get_dest_format(pDstPicture, &tmp1))
+@@ -1258,7 +1260,7 @@
+ PicturePtr pMaskPicture, PicturePtr pDstPicture,
+ PixmapPtr pSrc, PixmapPtr pMask, PixmapPtr pDst)
+ {
+- ScrnInfoPtr pScrn = xf86Screens[pSrcPicture->pDrawable->pScreen->myNum];
++ ScrnInfoPtr pScrn = xf86Screens[pDstPicture->pDrawable->pScreen->myNum];
+ I830Ptr pI830 = I830PTR(pScrn);
+ struct gen4_render_state *render_state= pI830->gen4_render_state;
+ gen4_composite_op *composite_op = &render_state->composite_op;
diff --git a/x11-drivers/xf86-video-intel/files/patch-src_ivch_ivch.c b/x11-drivers/xf86-video-intel/files/patch-src_ivch_ivch.c
new file mode 100644
index 0000000..b54885d
--- /dev/null
+++ b/x11-drivers/xf86-video-intel/files/patch-src_ivch_ivch.c
@@ -0,0 +1,17 @@
+--- src/ivch/ivch.c.orig 2010-02-21 12:47:05.000000000 -0600
++++ src/ivch/ivch.c 2010-02-21 12:48:09.000000000 -0600
+@@ -31,13 +31,11 @@
+
+ #include "xf86.h"
+ #include "xf86_OSproc.h"
+-#include "xf86Resources.h"
+ #include "compiler.h"
+ #include "miscstruct.h"
+ #include "xf86i2c.h"
+ #include "xf86Crtc.h"
+-#define DPMS_SERVER
+-#include <X11/extensions/dpms.h>
++#include <X11/extensions/dpmsproto.h>
+ #include <unistd.h>
+
+ #include "../i2c_vid.h"
diff --git a/x11-drivers/xf86-video-intel/files/patch-src_sil164_sil164.c b/x11-drivers/xf86-video-intel/files/patch-src_sil164_sil164.c
new file mode 100644
index 0000000..f9d7177
--- /dev/null
+++ b/x11-drivers/xf86-video-intel/files/patch-src_sil164_sil164.c
@@ -0,0 +1,17 @@
+--- src/sil164/sil164.c.orig 2010-02-21 12:49:54.000000000 -0600
++++ src/sil164/sil164.c 2010-02-21 12:50:40.000000000 -0600
+@@ -35,13 +35,11 @@
+
+ #include "xf86.h"
+ #include "xf86_OSproc.h"
+-#include "xf86Resources.h"
+ #include "compiler.h"
+ #include "miscstruct.h"
+ #include "xf86i2c.h"
+ #include "xf86Crtc.h"
+-#define DPMS_SERVER
+-#include <X11/extensions/dpms.h>
++#include <X11/extensions/dpmsproto.h>
+
+ #include "../i2c_vid.h"
+ #include "sil164.h"
diff --git a/x11-drivers/xf86-video-intel/files/patch-src_tfp410_tfp410.c b/x11-drivers/xf86-video-intel/files/patch-src_tfp410_tfp410.c
new file mode 100644
index 0000000..89927b3
--- /dev/null
+++ b/x11-drivers/xf86-video-intel/files/patch-src_tfp410_tfp410.c
@@ -0,0 +1,17 @@
+--- src/tfp410/tfp410.c.orig 2010-02-21 12:52:35.000000000 -0600
++++ src/tfp410/tfp410.c 2010-02-21 12:53:19.000000000 -0600
+@@ -34,13 +34,11 @@
+
+ #include "xf86.h"
+ #include "xf86_OSproc.h"
+-#include "xf86Resources.h"
+ #include "compiler.h"
+ #include "miscstruct.h"
+ #include "xf86i2c.h"
+ #include "xf86Crtc.h"
+-#define DPMS_SERVER
+-#include <X11/extensions/dpms.h>
++#include <X11/extensions/dpmsconst.h>
+
+ #include "../i2c_vid.h"
+ #include "tfp410.h"
diff --git a/x11-drivers/xf86-video-intel/files/patch-uxa_uxa-priv.h b/x11-drivers/xf86-video-intel/files/patch-uxa_uxa-priv.h
new file mode 100644
index 0000000..46eb72e
--- /dev/null
+++ b/x11-drivers/xf86-video-intel/files/patch-uxa_uxa-priv.h
@@ -0,0 +1,32 @@
+--- uxa/uxa-priv.h.orig 2009-05-12 19:12:11.000000000 -0500
++++ uxa/uxa-priv.h 2010-02-21 12:27:32.000000000 -0600
+@@ -42,8 +42,7 @@
+ #define NEED_EVENTS
+ #include <X11/Xproto.h>
+ #ifdef MITSHM
+-#define _XSHM_SERVER_
+-#include <X11/extensions/shmstr.h>
++#include <X11/extensions/shmproto.h>
+ #endif
+ #include "scrnintstr.h"
+ #include "pixmapstr.h"
+@@ -319,17 +318,11 @@
+ extern const GCOps uxa_ops;
+
+ #ifdef MITSHM
+-extern ShmFuncs uxa_shm_funcs;
+-
+ /* XXX these come from shmint.h, which isn't exported by the server */
+-void
+-ShmRegisterFuncs(ScreenPtr pScreen, ShmFuncsPtr funcs);
+
+-void
+-ShmSetPixmapFormat(ScreenPtr pScreen, int format);
++#include "shmint.h"
+
+-void
+-fbShmPutImage(XSHM_PUT_IMAGE_ARGS);
++extern ShmFuncs uxa_shm_funcs;
+
+ #endif
+
diff --git a/x11-drivers/xf86-video-intel/pkg-descr b/x11-drivers/xf86-video-intel/pkg-descr
new file mode 100644
index 0000000..6ace253
--- /dev/null
+++ b/x11-drivers/xf86-video-intel/pkg-descr
@@ -0,0 +1,3 @@
+Driver for Intel integrated graphics chipsets. It supports the i810,
+i810-DC100, i810e, i815, i830M, 845G, 852GM, 855GM, 865G, 915G, 915GM,
+945G, 945GM, 965G, 965Q, 946GZ and 965GM chipsets.
diff --git a/x11-drivers/xf86-video-intel/pkg-plist b/x11-drivers/xf86-video-intel/pkg-plist
new file mode 100644
index 0000000..900e0a9
--- /dev/null
+++ b/x11-drivers/xf86-video-intel/pkg-plist
@@ -0,0 +1,21 @@
+lib/libI810XvMC.la
+lib/libI810XvMC.so
+lib/libI810XvMC.so.1
+lib/libIntelXvMC.la
+lib/libIntelXvMC.so.1
+lib/libIntelXvMC.so
+lib/xorg/modules/drivers/ch7017.la
+lib/xorg/modules/drivers/ch7017.so
+lib/xorg/modules/drivers/ch7xxx.la
+lib/xorg/modules/drivers/ch7xxx.so
+lib/xorg/modules/drivers/intel_drv.la
+lib/xorg/modules/drivers/intel_drv.so
+lib/xorg/modules/drivers/ivch.la
+lib/xorg/modules/drivers/ivch.so
+lib/xorg/modules/drivers/sil164.la
+lib/xorg/modules/drivers/sil164.so
+lib/xorg/modules/drivers/tfp410.la
+lib/xorg/modules/drivers/tfp410.so
+@dirrmtry lib/xorg/modules/drivers
+@dirrmtry lib/xorg/modules
+@dirrmtry lib/xorg