1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-13 07:34:50 +00:00

Remove UMS DDX support (xf86-video-intel 2.7.1).

Use INSTALL_TARGET=install-strip for stripping.
Rename patches to patch-.
Add two patches to fix crashing the 1.14 xserver.
This commit is contained in:
Koop Mast 2014-10-28 11:02:44 +00:00
parent 1910aa2bcb
commit 7911f2065e
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=371625
26 changed files with 45 additions and 745 deletions

View File

@ -2,13 +2,15 @@
# $FreeBSD$
PORTNAME= xf86-video-intel
PORTVERSION= ${INTEL_VERSION}
PORTREVISION= ${INTEL_REVISION}
PORTVERSION= 2.21.15
PORTREVISION= 5
CATEGORIES= x11-drivers
MAINTAINER= x11@FreeBSD.org
COMMENT= Driver for Intel integrated graphics chipsets
LIB_DEPENDS= libxcb-util.so:${PORTSDIR}/x11/xcb-util
ONLY_FOR_ARCHS= amd64 i386
USE_GL= gl
@ -23,48 +25,9 @@ USE_XORG= glproto \
xrender \
xvmc
.include <bsd.port.options.mk>
.if defined(WITH_NEW_XORG)
INTEL_VERSION= 2.21.15
INTEL_REVISION= 4
CONFIGURE_ENV+= xorg_cv_cc_flag__Wno_maybe_uninitialized=no
CONFIGURE_ARGS+= --enable-sna
CONFIGURE_ARGS+= --disable-glamor
PLIST_SUB+= OLD="@comment "
EXTRA_PATCHES+= ${PATCHDIR}/extra-src__sna__sna_threads.c \
${PATCHDIR}/extra-src_sna_kgem.c \
${PATCHDIR}/extra-clang \
${PATCHDIR}/extra-i915kms
LIB_DEPENDS+= libxcb-util.so:${PORTSDIR}/x11/xcb-util
.else
INTEL_VERSION= 2.7.1
INTEL_REVISION= 9
PLIST_SUB+= OLD=""
EXTRA_PATCHES+= ${PATCHDIR}/extra-src_ch7017_ch7017.c \
${PATCHDIR}/extra-src_i830_render.c \
${PATCHDIR}/extra-src_ch7xxx_ch7xxx.c \
${PATCHDIR}/extra-src_i830_video.c \
${PATCHDIR}/extra-src_i810_driver.c \
${PATCHDIR}/extra-src_i915_hwmc.c \
${PATCHDIR}/extra-src_i810_hwmc.c \
${PATCHDIR}/extra-src_i915_render.c \
${PATCHDIR}/extra-src_i810_video.c \
${PATCHDIR}/extra-src_i965_render.c \
${PATCHDIR}/extra-src_i830_dri.c \
${PATCHDIR}/extra-src_ivch_ivch.c \
${PATCHDIR}/extra-src_i830_driver.c \
${PATCHDIR}/extra-src_sil164_sil164.c \
${PATCHDIR}/extra-src_i830_dvo.c \
${PATCHDIR}/extra-src_tfp410_tfp410.c \
${PATCHDIR}/extra-src_i830_i2c.c \
${PATCHDIR}/extra-uxa_uxa-priv.h
.endif
post-install:
@${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libIntelXvMC.so.1
@${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libI810XvMC.so.1
@${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/xorg/modules/drivers/intel_drv.so
INSTALL_TARGET= install-strip
.include <bsd.port.mk>

View File

@ -1,17 +0,0 @@
--- 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"

View File

@ -1,17 +0,0 @@
--- 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"

View File

@ -1,111 +0,0 @@
--- 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;
}

View File

@ -1,10 +0,0 @@
--- 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"

View File

@ -1,10 +0,0 @@
--- 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"

View File

@ -1,14 +0,0 @@
--- 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;

View File

@ -1,97 +0,0 @@
--- 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

View File

@ -1,80 +0,0 @@
--- src/i830_dvo.c.orig 2010-05-03 11:09:54.000000000 -0500
+++ src/i830_dvo.c 2010-05-03 11:13:31.000000000 -0500
@@ -38,28 +38,6 @@
#include "ch7xxx/ch7xxx.h"
#include "tfp410/tfp410.h"
-static const char *SIL164Symbols[] = {
- "Sil164VidOutput",
- NULL
-};
-static const char *TFP410Symbols[] = {
- "Tfp410VidOutput",
- NULL
-};
-static const char *CH7xxxSymbols[] = {
- "CH7xxxVidOutput",
- NULL
-};
-static const char *ivch_symbols[] = {
- "ivch_methods",
- NULL
-};
-
-static const char *ch7017_symbols[] = {
- "ch7017_methods",
- NULL
-};
-
/* driver list */
struct _I830DVODriver i830_dvo_drivers[] =
{
@@ -69,7 +47,6 @@
.fntablename = "SIL164VidOutput",
.dvo_reg = DVOC,
.address = (SIL164_ADDR_1<<1),
- .symbols = SIL164Symbols
},
{
.type = I830_OUTPUT_DVO_TMDS,
@@ -77,7 +54,6 @@
.fntablename = "CH7xxxVidOutput",
.dvo_reg = DVOC,
.address = (CH7xxx_ADDR_1<<1),
- .symbols = CH7xxxSymbols
},
{
.type = I830_OUTPUT_DVO_LVDS,
@@ -85,7 +61,6 @@
.fntablename = "ivch_methods",
.dvo_reg = DVOA,
.address = 0x04, /* Might also be 0x44, 0x84, 0xc4 */
- .symbols = ivch_symbols
},
{
.type = I830_OUTPUT_DVO_TMDS,
@@ -93,7 +68,6 @@
.fntablename = "TFP410VidOutput",
.dvo_reg = DVOC,
.address = (TFP410_ADDR_1<<1),
- .symbols = TFP410Symbols
},
{
.type = I830_OUTPUT_DVO_LVDS,
@@ -101,7 +75,6 @@
.fntablename = "ch7017_methods",
.dvo_reg = DVOC,
.address = 0xea,
- .symbols = ch7017_symbols,
.gpio = GPIOE,
}
};
@@ -447,8 +420,6 @@
if (drv->modhandle == NULL)
continue;
- xf86LoaderReqSymLists(drv->symbols, NULL);
-
ret_ptr = NULL;
drv->vid_rec = LoaderSymbol(drv->fntablename);

View File

@ -1,11 +0,0 @@
--- 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"

View File

@ -1,78 +0,0 @@
--- 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;

View File

@ -1,10 +0,0 @@
--- 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"

View File

@ -1,10 +0,0 @@
--- 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"

View File

@ -1,69 +0,0 @@
--- 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))

View File

@ -1,78 +0,0 @@
--- 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;

View File

@ -1,17 +0,0 @@
--- 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"

View File

@ -1,17 +0,0 @@
--- 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"

View File

@ -1,17 +0,0 @@
--- 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"

View File

@ -1,32 +0,0 @@
--- 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

View File

@ -0,0 +1,29 @@
--- src/sna/sna_accel.c.orig 2014-10-28 00:26:56.720761613 +0100
+++ src/sna/sna_accel.c 2014-10-28 00:28:12.783756153 +0100
@@ -14830,7 +14830,7 @@
{
#if HAS_PIXMAP_SHARING
ScreenPtr screen = sna->scrn->pScreen;
- PixmapDirtyUpdatePtr dirty;
+ PixmapDirtyUpdatePtr dirty = NULL;
xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list, ent) {
assert(dirty->src == sna->front);
@@ -14987,7 +14987,7 @@
{
#if HAS_PIXMAP_SHARING
ScreenPtr screen = sna->scrn->pScreen;
- PixmapDirtyUpdatePtr dirty;
+ PixmapDirtyUpdatePtr dirty = NULL;
bool flush = false;
xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list, ent) {
@@ -15216,7 +15216,7 @@
{
#if HAS_PIXMAP_SHARING
ScreenPtr screen = old_front->drawable.pScreen;
- PixmapDirtyUpdatePtr dirty, safe;
+ PixmapDirtyUpdatePtr dirty = NULL, safe;
xorg_list_for_each_entry_safe(dirty, safe, &screen->pixmap_dirty_list, ent) {
assert(dirty->src == old_front);

View File

@ -0,0 +1,11 @@
--- src/uxa/intel_driver.c.orig 2014-10-28 00:30:09.015749289 +0100
+++ src/uxa/intel_driver.c 2014-10-28 00:30:26.834767496 +0100
@@ -723,7 +723,7 @@
intel_dirty_update(ScreenPtr screen)
{
RegionPtr region;
- PixmapDirtyUpdatePtr ent;
+ PixmapDirtyUpdatePtr ent = NULL;
if (xorg_list_is_empty(&screen->pixmap_dirty_list))
return;

View File

@ -4,13 +4,5 @@ lib/libI810XvMC.so.1.0.0
lib/libIntelXvMC.so.1
lib/libIntelXvMC.so
lib/libIntelXvMC.so.1.0.0
%%OLD%%lib/xorg/modules/drivers/ch7017.so
%%OLD%%lib/xorg/modules/drivers/ch7xxx.so
lib/xorg/modules/drivers/intel_drv.so
%%OLD%%lib/xorg/modules/drivers/ivch.so
%%OLD%%lib/xorg/modules/drivers/sil164.so
%%OLD%%lib/xorg/modules/drivers/tfp410.so
man/man4/intel.4x.gz
@dirrmtry lib/xorg/modules/drivers
@dirrmtry lib/xorg/modules
@dirrmtry lib/xorg