Module Name: xsrc
Committed By: rjs
Date: Mon May 18 23:12:53 UTC 2015
Modified Files:
xsrc/external/mit/xf86-video-intel-old/dist/src: i830_driver.c
i830_uxa.c i830_video.c
xsrc/external/mit/xf86-video-intel-old/dist/uxa: uxa-priv.h
uxa-render.c uxa.c
Log Message:
Make it work with xorg-server-1.10.6.
To generate a diff of this commit:
cvs rdiff -u -r1.1.1.1 -r1.2 \
xsrc/external/mit/xf86-video-intel-old/dist/src/i830_driver.c \
xsrc/external/mit/xf86-video-intel-old/dist/src/i830_uxa.c \
xsrc/external/mit/xf86-video-intel-old/dist/src/i830_video.c
cvs rdiff -u -r1.1.1.1 -r1.2 \
xsrc/external/mit/xf86-video-intel-old/dist/uxa/uxa-priv.h \
xsrc/external/mit/xf86-video-intel-old/dist/uxa/uxa-render.c \
xsrc/external/mit/xf86-video-intel-old/dist/uxa/uxa.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: xsrc/external/mit/xf86-video-intel-old/dist/src/i830_driver.c
diff -u xsrc/external/mit/xf86-video-intel-old/dist/src/i830_driver.c:1.1.1.1 xsrc/external/mit/xf86-video-intel-old/dist/src/i830_driver.c:1.2
--- xsrc/external/mit/xf86-video-intel-old/dist/src/i830_driver.c:1.1.1.1 Mon May 18 22:11:04 2015
+++ xsrc/external/mit/xf86-video-intel-old/dist/src/i830_driver.c Mon May 18 23:12:53 2015
@@ -902,10 +902,6 @@ i830_xf86crtc_resize (ScrnInfoPtr scrn,
width, height, -1, -1, scrn->displayWidth * i830->cpp,
i830->FbBase + scrn->fbOffset);
- /* ick. xf86EnableDisableFBAccess smashes the screen pixmap devPrivate,
- * so update the value it uses
- */
- scrn->pixmapPrivate.ptr = i830->FbBase + scrn->fbOffset;
xf86DrvMsg(scrn->scrnIndex, X_INFO, "New front buffer at 0x%lx\n",
i830->front_buffer->offset);
i830_set_new_crtc_bo(scrn);
Index: xsrc/external/mit/xf86-video-intel-old/dist/src/i830_uxa.c
diff -u xsrc/external/mit/xf86-video-intel-old/dist/src/i830_uxa.c:1.1.1.1 xsrc/external/mit/xf86-video-intel-old/dist/src/i830_uxa.c:1.2
--- xsrc/external/mit/xf86-video-intel-old/dist/src/i830_uxa.c:1.1.1.1 Mon May 18 22:11:07 2015
+++ xsrc/external/mit/xf86-video-intel-old/dist/src/i830_uxa.c Mon May 18 23:12:53 2015
@@ -79,7 +79,7 @@ const int I830PatternROP[16] =
ROP_1
};
-static int uxa_pixmap_index;
+static DevPrivateKeyRec uxa_pixmap_index;
/**
* Returns whether a given pixmap is tiled or not.
@@ -452,7 +452,11 @@ i830_transform_is_affine (PictTransformP
dri_bo *
i830_get_pixmap_bo(PixmapPtr pixmap)
{
+#if HAS_DEVPRIVATEKEYREC
+ return dixGetPrivate(&pixmap->devPrivates, &uxa_pixmap_index);
+#else
return dixLookupPrivate(&pixmap->devPrivates, &uxa_pixmap_index);
+#endif
}
void
@@ -703,7 +707,11 @@ i830_uxa_init (ScreenPtr pScreen)
ScrnInfoPtr scrn = xf86Screens[pScreen->myNum];
I830Ptr i830 = I830PTR(scrn);
+#if HAS_DIXREGISTERPRIVATEKEY
+ if (!dixRegisterPrivateKey(&uxa_pixmap_index, PRIVATE_PIXMAP, 0))
+#else
if (!dixRequestPrivate(&uxa_pixmap_index, 0))
+#endif
return FALSE;
i830->uxa_driver = uxa_driver_alloc();
Index: xsrc/external/mit/xf86-video-intel-old/dist/src/i830_video.c
diff -u xsrc/external/mit/xf86-video-intel-old/dist/src/i830_video.c:1.1.1.1 xsrc/external/mit/xf86-video-intel-old/dist/src/i830_video.c:1.2
--- xsrc/external/mit/xf86-video-intel-old/dist/src/i830_video.c:1.1.1.1 Mon May 18 22:11:10 2015
+++ xsrc/external/mit/xf86-video-intel-old/dist/src/i830_video.c Mon May 18 23:12:53 2015
@@ -2204,40 +2204,6 @@ i830_clip_video_helper (ScrnInfoPtr pScr
return ret;
}
-static void
-i830_fill_colorkey (ScreenPtr pScreen, uint32_t key, RegionPtr clipboxes)
-{
- DrawablePtr root = &WindowTable[pScreen->myNum]->drawable;
- XID pval[2];
- BoxPtr pbox = REGION_RECTS(clipboxes);
- int i, nbox = REGION_NUM_RECTS(clipboxes);
- xRectangle *rects;
- GCPtr gc;
-
- if(!xf86Screens[pScreen->myNum]->vtSema) return;
-
- gc = GetScratchGC(root->depth, pScreen);
- pval[0] = key;
- pval[1] = IncludeInferiors;
- (void) ChangeGC(gc, GCForeground|GCSubwindowMode, pval);
- ValidateGC(root, gc);
-
- rects = xalloc (nbox * sizeof(xRectangle));
-
- for(i = 0; i < nbox; i++, pbox++)
- {
- rects[i].x = pbox->x1;
- rects[i].y = pbox->y1;
- rects[i].width = pbox->x2 - pbox->x1;
- rects[i].height = pbox->y2 - pbox->y1;
- }
-
- (*gc->ops->PolyFillRect)(root, gc, nbox, rects);
-
- xfree (rects);
- FreeScratchGC (gc);
-}
-
/*
* The source rectangle of the video is defined by (src_x, src_y, src_w, src_h).
* The dest rectangle of the video is defined by (drw_x, drw_y, drw_w, drw_h).
@@ -2525,7 +2491,7 @@ I830PutImage(ScrnInfoPtr pScrn,
/* update cliplist */
if (!REGION_EQUAL(pScrn->pScreen, &pPriv->clip, clipBoxes)) {
REGION_COPY(pScrn->pScreen, &pPriv->clip, clipBoxes);
- i830_fill_colorkey (pScreen, pPriv->colorKey, clipBoxes);
+ xf86XVFillKeyHelper(pScrn->pScreen, pPriv->colorKey, clipBoxes);
}
} else {
Bool sync = TRUE;
@@ -2867,7 +2833,7 @@ I830DisplaySurface(XF86SurfacePtr surfac
surface->pitches[0], x1, y1, x2, y2, &dstBox,
src_w, src_h, drw_w, drw_h);
- i830_fill_colorkey (pScreen, pI830Priv->colorKey, clipBoxes);
+ xf86XVFillKeyHelper(pScrn->pScreen, pI830Priv->colorKey, clipBoxes);
pPriv->isOn = TRUE;
/* we've prempted the XvImage stream so set its free timer */
Index: xsrc/external/mit/xf86-video-intel-old/dist/uxa/uxa-priv.h
diff -u xsrc/external/mit/xf86-video-intel-old/dist/uxa/uxa-priv.h:1.1.1.1 xsrc/external/mit/xf86-video-intel-old/dist/uxa/uxa-priv.h:1.2
--- xsrc/external/mit/xf86-video-intel-old/dist/uxa/uxa-priv.h:1.1.1.1 Mon May 18 22:11:27 2015
+++ xsrc/external/mit/xf86-video-intel-old/dist/uxa/uxa-priv.h Mon May 18 23:12:53 2015
@@ -177,12 +177,16 @@ typedef struct {
(PixmapWidthPaddingInfo[d].padRoundUp+1)))
#endif
-extern int uxa_screen_index;
+extern DevPrivateKeyRec uxa_screen_index;
static inline uxa_screen_t *
uxa_get_screen(ScreenPtr screen)
{
+#if HAS_DEVPRIVATEKEYREC
+ return dixGetPrivate(&screen->devPrivates, &uxa_screen_index);
+#else
return (uxa_screen_t *)dixLookupPrivate(&screen->devPrivates,
&uxa_screen_index);
+#endif
}
/** Align an offset to an arbitrary alignment */
Index: xsrc/external/mit/xf86-video-intel-old/dist/uxa/uxa-render.c
diff -u xsrc/external/mit/xf86-video-intel-old/dist/uxa/uxa-render.c:1.1.1.1 xsrc/external/mit/xf86-video-intel-old/dist/uxa/uxa-render.c:1.2
--- xsrc/external/mit/xf86-video-intel-old/dist/uxa/uxa-render.c:1.1.1.1 Mon May 18 22:11:27 2015
+++ xsrc/external/mit/xf86-video-intel-old/dist/uxa/uxa-render.c Mon May 18 23:12:53 2015
@@ -438,12 +438,6 @@ uxa_picture_from_pixman_image (ScreenPtr
return pPicture;
}
-#if XORG_VERSION_CURRENT < XORG_VERSION_NUMERIC (1,6,99,1,0)
-#define IMAGE_FROM_PICT(P) image_from_pict(P, 0)
-#else
-#define IMAGE_FROM_PICT(P) image_from_pict(P, 0, 0)
-#endif
-
static PicturePtr
uxa_acquire_pattern (ScreenPtr pScreen,
PicturePtr pPict,
@@ -452,8 +446,9 @@ uxa_acquire_pattern (ScreenPtr pScreen,
CARD16 width, CARD16 height)
{
pixman_image_t *source, *image;
-
- source = IMAGE_FROM_PICT (pPict);
+ int src_xoff, src_yoff;
+
+ source = image_from_pict(pPict, FALSE, &src_xoff, &src_yoff);
if (!source)
return 0;
Index: xsrc/external/mit/xf86-video-intel-old/dist/uxa/uxa.c
diff -u xsrc/external/mit/xf86-video-intel-old/dist/uxa/uxa.c:1.1.1.1 xsrc/external/mit/xf86-video-intel-old/dist/uxa/uxa.c:1.2
--- xsrc/external/mit/xf86-video-intel-old/dist/uxa/uxa.c:1.1.1.1 Mon May 18 22:11:27 2015
+++ xsrc/external/mit/xf86-video-intel-old/dist/uxa/uxa.c Mon May 18 23:12:53 2015
@@ -39,7 +39,7 @@
#include "dixfontstr.h"
#include "uxa.h"
-int uxa_screen_index;
+DevPrivateKeyRec uxa_screen_index;
/**
* uxa_get_drawable_pixmap() returns a backing pixmap for a given drawable.
@@ -460,6 +460,10 @@ uxa_driver_init(ScreenPtr screen, uxa_dr
ps = GetPictureScreenIfSet(screen);
#endif
+#if HAS_DIXREGISTERPRIVATEKEY
+ if (!dixRegisterPrivateKey(&uxa_screen_index, PRIVATE_SCREEN, 0))
+ return FALSE;
+#endif
uxa_screen = xcalloc (sizeof (uxa_screen_t), 1);
if (!uxa_screen) {