Input Devices
Soeren Sandmann
sandmann at daimi.au.dk
Mon Aug 8 06:40:26 PDT 2005
Dave Airlie <airlied at gmail.com> writes:
> I also meant to bring Ian up on this in a recent mail he mentioned
> working on the offscreen memory manager - this is crazy talk.. we need
> a memory manager for everything, you can't start saying what is
> onscreen and offscreen at the memory management level, you don't
> understand screen, you are managing memory...
I agree with this of course, but note that the issues aren't
completely orthogonal because you clearly can't swap out any on-screen
material.
Since I think that an important goal for the memory manager should be
to make is possible to switch between two X servers instantly (ie., at
next vblank), it becomes important that the memory manageithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI08-ISO8859-3.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI08-ISO8859-4.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI08-ISO8859-9.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI08.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI10-ISO8859-1.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI10-ISO8859-10.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI10-ISO8859-13.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI10-ISO8859-14.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI10-ISO8859-15.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI10-ISO8859-2.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI10-ISO8859-3.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI10-ISO8859-4.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI10-ISO8859-9.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI10.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI12-ISO8859-1.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI12-ISO8859-10.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI12-ISO8859-13.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI12-ISO8859-14.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI12-ISO8859-15.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI12-ISO8859-2.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI12-ISO8859-3.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI12-ISO8859-4.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI12-ISO8859-9.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI12.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI14-ISO8859-1.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI14-ISO8859-10.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI14-ISO8859-13.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI14-ISO8859-14.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI14-ISO8859-15.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI14-ISO8859-2.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI14-ISO8859-3.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI14-ISO8859-4.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI14-ISO8859-9.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI14.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI18-ISO8859-1.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI18-ISO8859-10.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI18-ISO8859-13.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI18-ISO8859-14.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI18-ISO8859-15.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI18-ISO8859-2.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI18-ISO8859-3.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI18-ISO8859-4.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI18-ISO8859-9.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI18.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI24-ISO8859-1.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fonts/75dpi/ncenI24-ISO8859-10.pcf.gz
/home/compromised/keithp/6.7/root/usr/X11R6/lib/X11/fot work for some reason, even though I'm
using the same command that xaa used, so they're done by the EXA
core (slowly)
o UploadToScreen and DownloadToScreen aren't implemented yet
o *Composite aren't implemented yet
o my offscreenBase calculation isn't precise, I'm missing out on an
adjustment made by the I830 PreInit somewhere, but it doesn't result
in overlap on my machine anyway (though if you have a different
amount of memory than me, you may see corruption)
Anyway, those things aside, it works fine for me. I was hoping to get
some eyes on it since my knowledge of driver internals and the i8xx in
particular is pretty superficial at this point.
Thanks,
Jesse
--Boundary-00=_Vc49Cj9HRaSIBQm
Content-Type: text/x-diff;
charset="us-ascii";
name="i830-exa-5.patch"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
filename="i830-exa-5.patch"
Index: i830.h
=================================RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/i810/i830.h,v
retrieving revision 1.12
diff -u -r1.12 i830.h
--- i830.h 31 Jul 2005 17:19:29 -0000 1.12
+++ i830.h 7 Aug 2005 23:08:17 -0000
@@ -35,7 +35,6 @@
* David Dawes <dawes at xfree86.org>
*
*/
-
#if 0
#define I830DEBUG
#endif
@@ -68,6 +67,12 @@
#include "i830_dri.h"
#endif
+#if 1 /* XF86EXA */
+#define I830_USE_EXA
+#include "../../exa/exa.h"
+#endif
+
+#define I830_USE_XAA
#include "common.h"
/* I830 Video BIOS support */
@@ -264,13 +269,20 @@
I830RegRec SavedReg;
I830RegRec ModeReg;
+ Bool useEXA;
Bool noAccel;
Bool SWCursor;
Bool cursorOn;
+#ifdef I830_USE_XAA
XAAInfoRecPtr AccelInfoRec;
+#endif
xf86CursorInfoPtr CursorInfoRec;
CloseScreenProcPtr CloseScreen;
+#ifdef I830_USE_EXA
+ ExaDriverPtr EXADriverPtr;
+#endif
+
I830WriteIndexedByteFunc writeControl;
I830ReadIndexedByteFunc readControl;
I830WriteByteFunc writeStandard;
Index: i830_accel.c
=================================RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/i810/i830_accel.c,v
retrieving revision 1.5
diff -u -r1.5 i830_accel.c
--- i830_accel.c 11 Jul 2005 02:29:51 -0000 1.5
+++ i830_accel.c 7 Aug 2005 23:08:18 -0000
@@ -112,7 +112,9 @@
DRICloseScreen(screenInfo.screens[pScrn->scrnIndex]);
}
#endif
+#ifdef I830_USE_XAA
pI830->AccelInfoRec = NULL; /* Stops recursive behavior */
+#endif
FatalError("lockup\n");
}
@@ -211,13 +213,14 @@
pI830->LpRing->space = pI830->LpRing->head - (pI830->LpRing->tail + 8);
if (pI830->LpRing->space < 0)
pI830->LpRing->space += pI830->LpRing->mem.Size;
-
+#ifdef I830_USE_XAA
if (pI830->AccelInfoRec)
pI830->AccelInfoRec->NeedToSync = TRUE;
+#endif
}
+#ifdef I830_USE_XAA
/* I830 Accel Functions */
-
static void I830SetupForMono8x8PatternFill(ScrnInfoPtr pScrn,
int pattx, int patty,
int fg, int bg, int rop,
@@ -250,143 +253,496 @@
static void I830SubsequentImageWriteScanline(ScrnInfoPtr pScrn, int bufno);
#endif
static void I830RestoreAccelState(ScrnInfoPtr pScrn);
+#endif /* I830_USE_XAA */
+
+#ifdef I830_USE_EXA
+void i830ScratchSave(ScreenPtr pScreen, ExaOffscreenArea *area);
+Bool i830UploadToScreen(PixmapPtr pDst, char *src, int src_pitch);
+Bool i830UploadToScratch(PixmapPtr pSrc, PixmapPtr pDst);
+Bool i830DownloadFromScreen(PixmapPtr pSrc, int x, int y, int w, int h, char *dst, int dst_pitch);
+
+/**
+ * I830EXASync - wait for a command to finish
+ * @pScreen: current screen
+ * @marker: marker command to wait for
+ *
+ * Wait for the command specified by @marker to finish, then return.
+ */
+static void
+I830EXASync(ScreenPtr pScreen, int marker)
+{
+ ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
+ I830Ptr pI830 = I830PTR(pScrn);
+#ifdef XF86DRI
+ /* VT switching tries to do this. */
+ if (!pI830->LockHeld && pI830->directRenderingEnabled)
+ return;
+#endif
-/* The following function sets up the supported acceleration. Call it
- * from the FbInit() function in the SVGA driver, or before ScreenInit
- * in a monolithic server.
+ if (pI830->entityPrivate && !pI830->entityPrivate->RingRunning)
+ return;
+
+ /* Send a flush instruction and then wait till the ring is empty.
+ * This is stronger than waiting for the blitter to finish as it also
+ * flushes the internal graphics caches.
+ */
+ {
+ BEGIN_LP_RING(2);
+ OUT_RING(MI_FLUSH | MI_WRITE_DIRTY_STATE | MI_INVALIDATE_MAP_CACHE);
+ OUT_RING(MI_NOOP); /* pad to quadword */
+ ADVANCE_LP_RING();
+ }
+
+ I830WaitLpRing(pScrn, pI830->LpRing->mem.Size - 8, 0);
+
+ pI830->LpRing->space = pI830->LpRing->mem.Size - 8;
+ pI830->nextColorExpandBuf = 0;
+}
+
+/**
+ * I830EXAPrepareSolid - prepare for a Solid operation, if possible
+ *
+ * TODO:
+ * - verify supported operations
*/
-Bool
-I830AccelInit(ScreenPtr pScreen)
+static Bool
+I830EXAPrepareSolid(PixmapPtr pPixmap, int alu, Pixel planemask, Pixel fg)
{
- XAAInfoRecPtr infoPtr;
- ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
- I830Ptr pI830 = I830PTR(pScrn);
- int i;
- int width = 0;
- int nr_buffers = 0;
- unsigned char *ptr = NULL;
+ ScrnInfoPtr pScrn = xf86Screens[pPixmap->drawable.pScreen->myNum];
+ I830Ptr pI830 = I830PTR(pScrn);
- if (I810_DEBUG & DEBUG_VERBOSE_ACCEL)
- ErrorF("I830AccelInit\n");
+ pI830->BR[13] = (XAAGetPatternROP(alu) << 16) |
+ (pScrn->displayWidth * pI830->cpp);
- pI830->AccelInfoRec = infoPtr = XAACreateInfoRec();
- if (!infoPtr)
- return FALSE;
+ pI830->BR[16] = fg;
- pI830->bufferOffset = 0;
- infoPtr->Flags = LINEAR_FRAMEBUFFER | OFFSCREEN_PIXMAPS | PIXMAP_CACHE;
+ /*
+ * Depth: 00 - 8 bit, 01 - 16 bit, 10 - 24 bit, 11 - 32 bit
+ */
+ switch (pScrn->bitsPerPixel) {
+ case 8:
+ pI830->BR[13] |= ((0 << 25) | (0 << 24));
+ break;
+ case 16:
+ pI830->BR[13] |= ((0 << 25) | (1 << 24));
+ break;
+ case 24:
+ pI830->BR[13] |= ((1 << 25) | (0 << 24));
+ break;
+ case 32:
+ pI830->BR[13] |= ((1 << 25) | (1 << 24));
+ break;
+ }
+ return TRUE;
+}
- /* Use the same sync function as the I830.
- */
- infoPtr->Sync = I830Sync;
+static void
+I830EXASolid(PixmapPtr pPixmap, int x1, int y1, int x2, int y2)
+{
+ ScrnInfoPtr pScrn = xf86Screens[pPixmap->drawable.pScreen->myNum];
+ I830Ptr pI830 = I830PTR(pScrn);
+ int h = y2 - y1, w = x2 - x1;
+
+ {
+ BEGIN_LP_RING(6);
+
+ if (pScrn->bitsPerPixel = 32)
+ OUT_RING(COLOR_BLT_CMD | COLOR_BLT_WRITE_ALPHA |
+ COLOR_BLT_WRITE_RGB);
+ else
+ OUT_RING(COLOR_BLT_CMD);
+
+ OUT_RING(pI830->BR[13]);
+ OUT_RING((h << 16) | (w * pI830->cpp));
+ OUT_RING(pI830->bufferOffset + (y1 * pScrn->displayWidth + x1) *
+ pI830->cpp);
+ OUT_RING(pI830->BR[16]);
+ OUT_RING(0);
- /* Everything else is different enough to justify different functions */
- {
- infoPtr->SolidFillFlags = NO_PLANEMASK;
- infoPtr->SetupForSolidFill = I830SetupForSolidFill;
- infoPtr->SubsequentSolidFillRect = I830SubsequentSolidFillRect;
- }
+ ADVANCE_LP_RING();
+ }
+}
- {
- infoPtr->ScreenToScreenCopyFlags = (NO_PLANEMASK | NO_TRANSPARENCY);
+static void
+I830EXADoneSolid(PixmapPtr pPixmap)
+{
+ return;
+}
- infoPtr->SetupForScreenToScreenCopy = I830SetupForScreenToScreenCopy;
- infoPtr->SubsequentScreenToScreenCopy - I830SubsequentScreenToScreenCopy;
- }
+/**
+ * TODO:
+ * - check for unsupported ops (e.g. planemask?)
+ */
+static Bool
+I830EXAPrepareCopy(PixmapPtr pSrcPixmap, PixmapPtr pDstPixmap, int xdir,
+ int ydir, int alu, Pixel planemask)
+{
+ ScrnInfoPtr pScrn = xf86Screens[pDstPixmap->drawable.pScreen->myNum];
+ I830Ptr pI830 = I830PTR(pScrn);
+ int pitch = pScrn->displayWidth * pI830->cpp;
+
+ if (ydir < 0) /* can't handle bottom to top */
+ return FALSE;
+
+ pI830->BR[13] = pitch | XAAGetCopyROP(alu) << 16;
+
+ switch (pScrn->bitsPerPixel) {
+ case 8:
+ break;
+ case 16:
+ pI830->BR[13] |= (1 << 24);
+ break;
+ case 32:
+ pI830->BR[13] |= ((1 << 25) | (1 << 24));
+ break;
+ }
+ return TRUE;
+}
- {
- infoPtr->SetupForMono8x8PatternFill = I830SetupForMono8x8PatternFill;
- infoPtr->SubsequentMono8x8PatternFillRect - I830SubsequentMono8x8PatternFillRect;
+static void
+I830EXACopy(PixmapPtr pDstPixmap, int src_x1, int src_y1, int dst_x1,
+ int dst_y1, int w, int h)
+{
+ ScrnInfoPtr pScrn = xf86Screens[pDstPixmap->drawable.pScreen->myNum];
+ I830Ptr pI830 = I830PTR(pScrn);
+ int dst_x2, dst_y2;
+
+ dst_x2 = dst_x1 + w;
+ dst_y2 = dst_y1 + h;
+
+ {
+ BEGIN_LP_RING(8);
+
+ if (pScrn->bitsPerPixel = 32)
+ OUT_RING(XY_SRC_COPY_BLT_CMD | XY_SRC_COPY_BLT_WRITE_ALPHA |
+ XY_SRC_COPY_BLT_WRITE_RGB);
+ else
+ OUT_RING(XY_SRC_COPY_BLT_CMD);
+
+ OUT_RING(pI830->BR[13]);
+ OUT_RING((dst_y1 << 16) | (dst_x1 & 0xffff));
+ OUT_RING((dst_y2 << 16) | (dst_x2 & 0xffff));
+ OUT_RING(pI830->bufferOffset);
+ OUT_RING((src_y1 << 16) | (src_x1 & 0xffff));
+ OUT_RING(pI830->BR[13] & 0xFFFF);
+ OUT_RING(pI830->bufferOffset);
- infoPtr->Mono8x8PatternFillFlags = (HARDWARE_PATTERN_PROGRAMMED_BITS |
- HARDWARE_PATTERN_SCREEN_ORIGIN |
- HARDWARE_PATTERN_PROGRAMMED_ORIGIN |
- BIT_ORDER_IN_BYTE_MSBFIRST |
- NO_PLANEMASK);
+ ADVANCE_LP_RING();
+ }
+}
- }
+static void
+I830EXADoneCopy(PixmapPtr pDstPixmap)
+{
+ return;
+}
- /* On the primary screen */
- if (pI830->init = 0) {
- if (pI830->Scratch.Size != 0) {
- width = ((pScrn->displayWidth + 31) & ~31) / 8;
- nr_buffers = pI830->Scratch.Size / width;
- ptr = pI830->FbBase + pI830->Scratch.Start;
- }
- } else {
- /* On the secondary screen */
- I830Ptr pI8301 = I830PTR(pI830->entityPrivate->pScrn_1);
- if (pI8301->Scratch2.Size != 0) {
- width = ((pScrn->displayWidth + 31) & ~31) / 8;
- nr_buffers = pI8301->Scratch2.Size / width;
- /* We have to use the primary screen's FbBase, as that's where
- * we allocated Scratch2, so we get the correct pointer */
- ptr = pI8301->FbBase + pI8301->Scratch2.Start;
- }
- }
+#if 0 /* Not done (or even started for that matter) */
+static Bool
+I830EXAUploadToScreen(PixmapPtr pDst, char *src, int src_pitch)
+{
+ ScrnInfoPtr pScrn = xf86Screens[pDst->drawable.pScreen->myNum];
+ I830Ptr pI830 = I830PTR(pScrn);
+ unsigned char *dst = pDst->devPrivate.ptr;
+ int dst_pitch = pDst->devKind;
+ int size = src_pitch < dst_pitch ? src_pitch : dst_pitch;
+ int h = pDst->drawable.height;
+
+ I830Sync(pScrn);
+
+ while(h--) {
+ i830MemCopyToVideoRam(pI830, dst, (unsigned char *)src, size);
+ src += src_pitch;
+ dst += dst_pitch;
+ }
- if (nr_buffers) {
- pI830->NumScanlineColorExpandBuffers = nr_buffers;
- pI830->ScanlineColorExpandBuffers = (unsigned char **)
+ return TRUE;
+}
+
+static Bool
+I830EXADownloadFromScreen(PixmapPtr pSrc, int x, int y, int w, int h,
+ char *dst, int dst_pitch)
+{
+ ScrnInfoPtr pScrn = xf86Screens[pSrc->drawable.pScreen->myNum];
+ I830Ptr pI830 = I830PTR(pScrn);
+ unsigned char *src = pSrc->devPrivate.ptr;
+ int src_pitch = pSrc->devKind;
+ int size = src_pitch < dst_pitch ? src_pitch : dst_pitch;
+
+ I830Sync(pScrn);
+
+ while(h--) {
+ i830MemCopyFromVideoRam(pI830, (unsigned char *)dst, src, size);
+ src += src_pitch;
+ dst += dst_pitch;
+ }
+
+ return TRUE;
+}
+
+static Bool
+I830EXACheckComposite(int op, PicturePtr pSrcPicture, PicturePtr pMaskPicture,
+ PicturePtr pDstPicture)
+{
+ return FALSE; /* no Composite yet */
+}
+
+static Bool
+I830EXAPrepareComposite(int op, PicturePtr pSrcPicture,
+ PicturePtr pMaskPicture, PicturePtr pDstPicture,
+ PixmapPtr pSrc, PixmapPtr pMask, PixmapPtr pDst)
+{
+ return FALSE; /* no Composite yet */
+}
+
+static void
+I830EXAComposite(PixmapPtr pDst, int srcX, int srcY, int maskX, int maskY,
+ int dstX, int dstY, int width, int height)
+{
+ return; /* no Composite yet */
+}
+
+static void
+I830EXADoneComposite(PixmapPtr pDst)
+{
+ return; /* no Composite yet */
+}
+#endif
+
+/*
+ * TODO:
+ * - verify offscreen base, pitch, alignment, etc.
+ * - romised/keithp/6.7/root/usr/X11R6/man/man3/glEvalCoord2dv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glEvalCoord2f.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glEvalCoord2fv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glEvalMesh.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glEvalMesh1.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glEvalMesh2.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glEvalPoint.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glEvalPoint1.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glEvalPoint2.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glFeedbackBuffer.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glFinish.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glFlush.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glFog.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glFogf.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glFogfv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glFogi.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glFogiv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glFrontFace.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glFrustum.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGenLists.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGenTextures.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGet.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetBooleanv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetClipPlane.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetColorTable.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetColorTableParameter.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetColorTableParameterfv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetColorTableParameteriv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetConvolutionFilter.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetConvolutionParameter.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetDoublev.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetError.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetFloatv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetHistogram.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetHistogramParameter.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetIntegerv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetLight.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetLightfv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetLightiv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetMap.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetMapdv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetMapfv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetMapiv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetMaterial.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetMaterialfv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetMaterialiv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetMinmax.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetMinmaxParameter.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetPixelMap.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetPixelMapfv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetPixelMapuiv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetPixelMapusv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetPointerv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetPolygonStipple.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetSeparableFilter.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetString.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetTexEnv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetTexEnvfv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetTexEnviv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetTexGen.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetTexGendv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetTexGenfv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetTexGeniv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetTexImage.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetTexLevelParameter.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetTexLevelParameterfv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetTexLevelParameteriv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetTexParameter.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetTexParameterfv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glGetTexParameteriv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glHint.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glHistogram.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glIndex.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glIndexd.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glIndexdv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glIndexf.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glIndexfv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glIndexi.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glIndexiv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glIndexMask.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glIndexPointer.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glIndexs.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glIndexsv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glIndexub.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glIndexubv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glInitNames.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glInterleavedArrays.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glIsEnabled.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glIslist.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glIsTexture.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glLight.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glLightf.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glLightfv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glLighti.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glLightiv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glLightModel.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glLightModelf.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glLightModelfv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glLightModeli.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glLightModeliv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glLineStipple.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glLineWidth.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glListBase.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glLoadIdentity.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glLoadMatrix.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glLoadMatrixd.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glLoadMatrixf.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glLoadName.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glLogicOp.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMap1.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMap1d.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMap1f.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMap2.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMap2d.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMap2f.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMapGrid.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMapGrid1d.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMapGrid1f.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMapGrid2d.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMapGrid2f.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMaterial.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMaterialf.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMaterialfv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMateriali.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMaterialiv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMatrixMode.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMinmax.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord1dARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord1dvARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord1fARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord1fvARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord1iARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord1ivARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord1sARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord1svARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord2dARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord2dvARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord2fARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord2fvARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord2iARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord2ivARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord2sARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord2svARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord3dARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord3dvARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord3fARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord3fvARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord3iARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord3ivARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord3sARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord3svARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord4dARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord4dvARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord4fARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord4fvARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord4iARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord4ivARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord4sARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoord4svARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultiTexCoordARB.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultMatrix.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultMatrixd.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glMultMatrixf.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glNewList.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glNormal.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glNormal3b.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glNormal3bv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glNormal3d.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glNormal3dv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glNormal3f.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glNormal3fv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glNormal3i.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glNormal3iv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glNormal3s.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glNormal3sv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glNormalPointer.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glOrtho.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glPassThrough.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glPixelMap.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glPixelMapfv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glPixelMapuiv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glPixelMapusv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glPixelStore.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glPixelStoref.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glPixelStorei.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glPixelTransfer.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glPixelTransferf.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glPixelTransferi.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glPixelZoom.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glPointSize.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glPolygonMode.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glPolygonOffset.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glPolygonStipple.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glPopAttrib.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glPopClientAttrib.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glPopMatrix.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glPopName.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glPrioritizeTextures.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glPushAttrib.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glPushClientAttrib.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glPushMatrix.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glPushName.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glRasterPos.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glRasterPos2d.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glRasterPos2dv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glRasterPos2f.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glRasterPos2fv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glRasterPos2i.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glRasterPos2iv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glRasterPos2s.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glRasterPos2sv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glRasterPos3d.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glRasterPos3dv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glRasterPos3f.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glRasterPos3fv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glRasterPos3i.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glRasterPos3iv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glRasterPos3s.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glRasterPos3sv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glRasterPos4d.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glRasterPos4dv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glRasterPos4f.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glRasterPos4fv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glRasterPos4i.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glRasterPos4iv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glRasterPos4s.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glRasterPos4sv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glReadBuffer.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glReadPixels.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glRect.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glRectd.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glRectdv.3x
/home/compromised/keithp/6.7/root/usr/X11R6/man/man3/glRectf.3x
/XAA
if (infoPtr) {
if (infoPtr->ScanlineColorExpandBuffers)
xfree(infoPtr->ScanlineColorExpandBuffers);
XAADestroyInfoRec(infoPtr);
pI830->AccelInfoRec = NULL;
}
-
+#endif
+#ifdef I830_USE_EXA
+ if (pI830->useEXA) {
+ exaDriverFini(pScreen);
+ xfree(pI830->EXADriverPtr);
+ pI830->EXADriverPtr = NULL;
+ }
+#endif
if (pI830->CursorInfoRec) {
xf86DestroyCursorInfoRec(pI830->CursorInfoRec);
pI830->CursorInfoRec = 0;
Index: i830_video.c
=================================RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/i810/i830_video.c,v
retrieving revision 1.18
diff -u -r1.18 i830_video.c
--- i830_video.c 11 Jul 2005 02:29:51 -0000 1.18
+++ i830_video.c 7 Aug 2005 23:08:24 -0000
@@ -1489,10 +1489,10 @@
I830AllocateMemory(ScrnInfoPtr pScrn, FBLinearPtr linear, int size)
{
ScreenPtr pScreen;
- FBLinearPtr new_linear;
DPRINTF(PFX, "I830AllocateMemory\n");
-
+#ifdef I830_USE_XAA
+ FBLinearPtr new_linear;
if (linear) {
if (linear->size >= size)
return linear;
@@ -1523,6 +1523,32 @@
}
return new_linear;
+#endif /* I830_USE_XAA */
+#ifdef I830_USE_EXA
+ {
+ ExaOffscreenArea *area = (ExaOffscreenArea *)(linear);
+
+ if (area) {
+ if(area->size >= size)
+ return linear;
+
+ exaOffscreenFree(pScreen, area);
+ linear = NULL;
+ }
+
+ if (!(area = exaOffscreenAlloc(pScreen, size, 4, TRUE, NULL,
+ NULL))) {
+ xf86DrvMsg(pScrn->scrnIndex, X_INFO,
+ "Xv: Failed to allocate %d bytes of video memory\n",
+ size);
+ return 0;
+ }
+ else {
+ linear = (void *)area;
+ return linear;
+ }
+ }
+#endif /* I830_USE_EXA */
}
static int
--Boundary-00=_Vc49Cj9HRaSIBQm--
More information about the xorg
mailing list