summaryrefslogtreecommitdiff
path: root/driver
diff options
context:
space:
mode:
authorMatthieu Herrb <matthieu@cvs.openbsd.org>2008-10-12 21:49:05 +0000
committerMatthieu Herrb <matthieu@cvs.openbsd.org>2008-10-12 21:49:05 +0000
commitbb279ab75faf7372e2d7306d723521a00c7b5ea4 (patch)
treec35cb9fd37cb34107985c6bc71f94b08c78dc449 /driver
parent4b9bf55232c27c45e29a8d5a1f3f76b0753db63d (diff)
xf86-vmware 10.16.5
Diffstat (limited to 'driver')
-rw-r--r--driver/xf86-video-vmware/configure20
-rw-r--r--driver/xf86-video-vmware/configure.ac2
-rw-r--r--driver/xf86-video-vmware/src/vmware.c55
-rw-r--r--driver/xf86-video-vmware/src/vmware.h5
-rw-r--r--driver/xf86-video-vmware/src/vmwarevideo.c114
5 files changed, 135 insertions, 61 deletions
diff --git a/driver/xf86-video-vmware/configure b/driver/xf86-video-vmware/configure
index b35cb8b3d..df6245483 100644
--- a/driver/xf86-video-vmware/configure
+++ b/driver/xf86-video-vmware/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.59 for xf86-video-vmware 10.16.4.
+# Generated by GNU Autoconf 2.59 for xf86-video-vmware 10.16.5.
#
# Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=xorg>.
#
@@ -423,8 +423,8 @@ SHELL=${CONFIG_SHELL-/bin/sh}
# Identity of this package.
PACKAGE_NAME='xf86-video-vmware'
PACKAGE_TARNAME='xf86-video-vmware'
-PACKAGE_VERSION='10.16.4'
-PACKAGE_STRING='xf86-video-vmware 10.16.4'
+PACKAGE_VERSION='10.16.5'
+PACKAGE_STRING='xf86-video-vmware 10.16.5'
PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg'
ac_unique_file="Makefile.am"
@@ -974,7 +974,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures xf86-video-vmware 10.16.4 to adapt to many kinds of systems.
+\`configure' configures xf86-video-vmware 10.16.5 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1040,7 +1040,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of xf86-video-vmware 10.16.4:";;
+ short | recursive ) echo "Configuration of xf86-video-vmware 10.16.5:";;
esac
cat <<\_ACEOF
@@ -1193,7 +1193,7 @@ fi
test -n "$ac_init_help" && exit 0
if $ac_init_version; then
cat <<\_ACEOF
-xf86-video-vmware configure 10.16.4
+xf86-video-vmware configure 10.16.5
generated by GNU Autoconf 2.59
Copyright (C) 2003 Free Software Foundation, Inc.
@@ -1207,7 +1207,7 @@ cat >&5 <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by xf86-video-vmware $as_me 10.16.4, which was
+It was created by xf86-video-vmware $as_me 10.16.5, which was
generated by GNU Autoconf 2.59. Invocation command line was
$ $0 $@
@@ -1810,7 +1810,7 @@ fi
# Define the identity of the package.
PACKAGE='xf86-video-vmware'
- VERSION='10.16.4'
+ VERSION='10.16.5'
cat >>confdefs.h <<_ACEOF
@@ -21333,7 +21333,7 @@ _ASBOX
} >&5
cat >&5 <<_CSEOF
-This file was extended by xf86-video-vmware $as_me 10.16.4, which was
+This file was extended by xf86-video-vmware $as_me 10.16.5, which was
generated by GNU Autoconf 2.59. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -21396,7 +21396,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\
-xf86-video-vmware config.status 10.16.4
+xf86-video-vmware config.status 10.16.5
configured by $0, generated by GNU Autoconf 2.59,
with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
diff --git a/driver/xf86-video-vmware/configure.ac b/driver/xf86-video-vmware/configure.ac
index 7f56e955b..cb4953236 100644
--- a/driver/xf86-video-vmware/configure.ac
+++ b/driver/xf86-video-vmware/configure.ac
@@ -22,7 +22,7 @@
AC_PREREQ(2.57)
AC_INIT([xf86-video-vmware],
- 10.16.4,
+ 10.16.5,
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
xf86-video-vmware)
diff --git a/driver/xf86-video-vmware/src/vmware.c b/driver/xf86-video-vmware/src/vmware.c
index 2c8d35719..64284a0bd 100644
--- a/driver/xf86-video-vmware/src/vmware.c
+++ b/driver/xf86-video-vmware/src/vmware.c
@@ -83,7 +83,7 @@ char rcsId_vmware[] =
#define VMWARE_DRIVER_NAME "vmware"
#define VMWARE_MAJOR_VERSION 10
#define VMWARE_MINOR_VERSION 16
-#define VMWARE_PATCHLEVEL 4
+#define VMWARE_PATCHLEVEL 5
#define VMWARE_DRIVER_VERSION \
(VMWARE_MAJOR_VERSION * 65536 + VMWARE_MINOR_VERSION * 256 + VMWARE_PATCHLEVEL)
#define VMWARE_DRIVER_VERSION_STRING \
@@ -1447,6 +1447,59 @@ VMWAREAddDisplayMode(ScrnInfoPtr pScrn,
}
+/*
+ *-----------------------------------------------------------------------------
+ *
+ * vmwareIsRegionEqual --
+ *
+ * This function implements REGION_EQUAL because older versions of
+ * regionstr.h don't define it.
+ * It is a slightly modified version of miRegionEqual from $Xorg: miregion.c
+ *
+ * Results:
+ * TRUE if regions are equal; FALSE otherwise
+ *
+ * Side effects:
+ * None.
+ *
+ *-----------------------------------------------------------------------------
+ */
+
+Bool
+vmwareIsRegionEqual(const RegionPtr reg1,
+ const RegionPtr reg2)
+{
+ int i, num;
+ BoxPtr rects1, rects2;
+
+ if ((reg1->extents.x1 != reg2->extents.x1) ||
+ (reg1->extents.x2 != reg2->extents.x2) ||
+ (reg1->extents.y1 != reg2->extents.y1) ||
+ (reg1->extents.y2 != reg2->extents.y2)) {
+ return FALSE;
+ }
+
+ num = REGION_NUM_RECTS(reg1);
+ if (num != REGION_NUM_RECTS(reg2)) {
+ return FALSE;
+ }
+
+ rects1 = REGION_RECTS(reg1);
+ rects2 = REGION_RECTS(reg2);
+
+ for (i = 0; i < num; i++) {
+ if ((rects1[i].x1 != rects2[i].x1) ||
+ (rects1[i].x2 != rects2[i].x2) ||
+ (rects1[i].y1 != rects2[i].y1) ||
+ (rects1[i].y2 != rects2[i].y2)) {
+ return FALSE;
+ }
+ }
+
+ return TRUE;
+}
+
+
#if VMWARE_DRIVER_FUNC
static Bool
VMWareDriverFunc(ScrnInfoPtr pScrn,
diff --git a/driver/xf86-video-vmware/src/vmware.h b/driver/xf86-video-vmware/src/vmware.h
index bb1234de2..3cad89dde 100644
--- a/driver/xf86-video-vmware/src/vmware.h
+++ b/driver/xf86-video-vmware/src/vmware.h
@@ -243,6 +243,11 @@ DisplayModeRec *VMWAREAddDisplayMode(
int height
);
+Bool vmwareIsRegionEqual(
+ const RegionPtr reg1,
+ const RegionPtr reg2
+ );
+
/* vmwarecurs.c */
Bool vmwareCursorInit(
ScreenPtr pScr
diff --git a/driver/xf86-video-vmware/src/vmwarevideo.c b/driver/xf86-video-vmware/src/vmwarevideo.c
index 59c25fe09..852238386 100644
--- a/driver/xf86-video-vmware/src/vmwarevideo.c
+++ b/driver/xf86-video-vmware/src/vmwarevideo.c
@@ -393,7 +393,8 @@ vmwareOffscreenFree(VMWAREOffscreenPtr memptr)
*-----------------------------------------------------------------------------
*/
-Bool vmwareVideoEnabled(VMWAREPtr pVMWARE)
+Bool
+vmwareVideoEnabled(VMWAREPtr pVMWARE)
{
return ((pVMWARE->vmwareCapability & SVGA_CAP_EXTENDED_FIFO) &&
(pVMWARE->vmwareFIFO[SVGA_FIFO_CAPABILITIES] &
@@ -418,7 +419,8 @@ Bool vmwareVideoEnabled(VMWAREPtr pVMWARE)
*-----------------------------------------------------------------------------
*/
-Bool vmwareVideoInit(ScreenPtr pScreen)
+Bool
+vmwareVideoInit(ScreenPtr pScreen)
{
ScrnInfoPtr pScrn = infoFromScreen(pScreen);
XF86VideoAdaptorPtr *overlayAdaptors, *newAdaptors = NULL;
@@ -486,7 +488,8 @@ Bool vmwareVideoInit(ScreenPtr pScreen)
*-----------------------------------------------------------------------------
*/
-void vmwareVideoEnd(ScreenPtr pScreen)
+void
+vmwareVideoEnd(ScreenPtr pScreen)
{
ScrnInfoPtr pScrn = infoFromScreen(pScreen);
VMWAREPtr pVMWARE = VMWAREPTR(pScrn);
@@ -526,7 +529,8 @@ void vmwareVideoEnd(ScreenPtr pScreen)
*-----------------------------------------------------------------------------
*/
-static XF86VideoAdaptorPtr vmwareVideoSetup(ScrnInfoPtr pScrn)
+static XF86VideoAdaptorPtr
+vmwareVideoSetup(ScrnInfoPtr pScrn)
{
VMWAREPtr pVMWARE = VMWAREPTR(pScrn);
XF86VideoAdaptorPtr adaptor;
@@ -614,12 +618,13 @@ static XF86VideoAdaptorPtr vmwareVideoSetup(ScrnInfoPtr pScrn)
*-----------------------------------------------------------------------------
*/
-static int vmwareVideoInitStream(ScrnInfoPtr pScrn, VMWAREVideoPtr pVid,
- short src_x, short src_y, short drw_x,
- short drw_y, short src_w, short src_h,
- short drw_w, short drw_h, int format,
- unsigned char *buf, short width,
- short height, RegionPtr clipBoxes)
+static int
+vmwareVideoInitStream(ScrnInfoPtr pScrn, VMWAREVideoPtr pVid,
+ short src_x, short src_y, short drw_x,
+ short drw_y, short src_w, short src_h,
+ short drw_w, short drw_h, int format,
+ unsigned char *buf, short width,
+ short height, RegionPtr clipBoxes)
{
VMWAREPtr pVMWARE = VMWAREPTR(pScrn);
int i;
@@ -689,9 +694,10 @@ static int vmwareVideoInitStream(ScrnInfoPtr pScrn, VMWAREVideoPtr pVid,
*-----------------------------------------------------------------------------
*/
-static int vmwareVideoInitAttributes(ScrnInfoPtr pScrn, VMWAREVideoPtr pVid,
- int format, unsigned short width,
- unsigned short height)
+static int
+vmwareVideoInitAttributes(ScrnInfoPtr pScrn, VMWAREVideoPtr pVid,
+ int format, unsigned short width,
+ unsigned short height)
{
int size;
VMWAREVideoFmtData *fmtData;
@@ -732,12 +738,13 @@ static int vmwareVideoInitAttributes(ScrnInfoPtr pScrn, VMWAREVideoPtr pVid,
*-----------------------------------------------------------------------------
*/
-static int vmwareVideoPlay(ScrnInfoPtr pScrn, VMWAREVideoPtr pVid,
- short src_x, short src_y, short drw_x,
- short drw_y, short src_w, short src_h,
- short drw_w, short drw_h, int format,
- unsigned char *buf, short width,
- short height, RegionPtr clipBoxes)
+static int
+vmwareVideoPlay(ScrnInfoPtr pScrn, VMWAREVideoPtr pVid,
+ short src_x, short src_y, short drw_x,
+ short drw_y, short src_w, short src_h,
+ short drw_w, short drw_h, int format,
+ unsigned char *buf, short width,
+ short height, RegionPtr clipBoxes)
{
VMWAREPtr pVMWARE = VMWAREPTR(pScrn);
uint32 *fifoItem;
@@ -823,10 +830,10 @@ static int vmwareVideoPlay(ScrnInfoPtr pScrn, VMWAREVideoPtr pVid,
vmwareWriteWordToFIFO(pVMWARE, fifoItem[i]);
}
- /*
+ /*
* Update the clipList and paint the colorkey, if required.
*/
- if (!REGION_EQUAL(pScrn->pScreen, &pVid->clipBoxes, clipBoxes)) {
+ if (!vmwareIsRegionEqual(&pVid->clipBoxes, clipBoxes)) {
REGION_COPY(pScrn->pScreen, &pVid->clipBoxes, clipBoxes);
if (pVid->isAutoPaintColorkey) {
xf86XVFillKeyHelper(pScrn->pScreen, pVid->colorKey, clipBoxes);
@@ -858,7 +865,8 @@ static int vmwareVideoPlay(ScrnInfoPtr pScrn, VMWAREVideoPtr pVid,
*-----------------------------------------------------------------------------
*/
-static void vmwareVideoFlush(VMWAREPtr pVMWARE, uint32 streamId)
+static void
+vmwareVideoFlush(VMWAREPtr pVMWARE, uint32 streamId)
{
struct PACKED _body {
uint32 escape;
@@ -904,8 +912,9 @@ static void vmwareVideoFlush(VMWAREPtr pVMWARE, uint32 streamId)
*-----------------------------------------------------------------------------
*/
-static void vmwareVideoSetOneReg(VMWAREPtr pVMWARE, uint32 streamId,
- uint32 regId, uint32 value)
+static void
+vmwareVideoSetOneReg(VMWAREPtr pVMWARE, uint32 streamId,
+ uint32 regId, uint32 value)
{
struct PACKED _item {
uint32 regId;
@@ -960,7 +969,8 @@ static void vmwareVideoSetOneReg(VMWAREPtr pVMWARE, uint32 streamId,
*-----------------------------------------------------------------------------
*/
-static void vmwareVideoEndStream(ScrnInfoPtr pScrn, VMWAREVideoPtr pVid)
+static void
+vmwareVideoEndStream(ScrnInfoPtr pScrn, VMWAREVideoPtr pVid)
{
uint32 id, colorKey, flags;
Bool isAutoPaintColorkey;
@@ -1019,18 +1029,20 @@ static void vmwareVideoEndStream(ScrnInfoPtr pScrn, VMWAREVideoPtr pVid)
*/
#ifdef HAVE_XORG_SERVER_1_0_99_901
-static int vmwareXvPutImage(ScrnInfoPtr pScrn, short src_x, short src_y,
- short drw_x, short drw_y, short src_w, short src_h,
- short drw_w, short drw_h, int format,
- unsigned char *buf, short width, short height,
- Bool sync, RegionPtr clipBoxes, pointer data,
- DrawablePtr dst)
+static int
+vmwareXvPutImage(ScrnInfoPtr pScrn, short src_x, short src_y,
+ short drw_x, short drw_y, short src_w, short src_h,
+ short drw_w, short drw_h, int format,
+ unsigned char *buf, short width, short height,
+ Bool sync, RegionPtr clipBoxes, pointer data,
+ DrawablePtr dst)
#else
-static int vmwareXvPutImage(ScrnInfoPtr pScrn, short src_x, short src_y,
- short drw_x, short drw_y, short src_w, short src_h,
- short drw_w, short drw_h, int format,
- unsigned char *buf, short width, short height,
- Bool sync, RegionPtr clipBoxes, pointer data)
+static int
+vmwareXvPutImage(ScrnInfoPtr pScrn, short src_x, short src_y,
+ short drw_x, short drw_y, short src_w, short src_h,
+ short drw_w, short drw_h, int format,
+ unsigned char *buf, short width, short height,
+ Bool sync, RegionPtr clipBoxes, pointer data)
#endif
{
VMWAREPtr pVMWARE = VMWAREPTR(pScrn);
@@ -1066,7 +1078,8 @@ static int vmwareXvPutImage(ScrnInfoPtr pScrn, short src_x, short src_y,
*-----------------------------------------------------------------------------
*/
-static void vmwareStopVideo(ScrnInfoPtr pScrn, pointer data, Bool Cleanup)
+static void
+vmwareStopVideo(ScrnInfoPtr pScrn, pointer data, Bool Cleanup)
{
VMWAREVideoPtr pVid = data;
VMWAREPtr pVMWARE = VMWAREPTR(pScrn);
@@ -1107,10 +1120,10 @@ static void vmwareStopVideo(ScrnInfoPtr pScrn, pointer data, Bool Cleanup)
*-----------------------------------------------------------------------------
*/
-static int vmwareQueryImageAttributes(ScrnInfoPtr pScrn, int format,
- unsigned short *width,
- unsigned short *height, int *pitches,
- int *offsets)
+static int
+vmwareQueryImageAttributes(ScrnInfoPtr pScrn, int format,
+ unsigned short *width, unsigned short *height,
+ int *pitches, int *offsets)
{
INT32 size, tmp;
@@ -1184,8 +1197,9 @@ static int vmwareQueryImageAttributes(ScrnInfoPtr pScrn, int format,
*-----------------------------------------------------------------------------
*/
-static int vmwareSetPortAttribute(ScrnInfoPtr pScrn, Atom attribute,
- INT32 value, pointer data)
+static int
+vmwareSetPortAttribute(ScrnInfoPtr pScrn, Atom attribute,
+ INT32 value, pointer data)
{
VMWAREVideoPtr pVid = (VMWAREVideoPtr) data;
Atom xvColorKey = MAKE_ATOM("XV_COLORKEY");
@@ -1223,8 +1237,9 @@ static int vmwareSetPortAttribute(ScrnInfoPtr pScrn, Atom attribute,
*-----------------------------------------------------------------------------
*/
-static int vmwareGetPortAttribute(ScrnInfoPtr pScrn, Atom attribute,
- INT32 *value, pointer data)
+static int
+vmwareGetPortAttribute(ScrnInfoPtr pScrn, Atom attribute,
+ INT32 *value, pointer data)
{
VMWAREVideoPtr pVid = (VMWAREVideoPtr) data;
Atom xvColorKey = MAKE_ATOM("XV_COLORKEY");
@@ -1267,10 +1282,11 @@ static int vmwareGetPortAttribute(ScrnInfoPtr pScrn, Atom attribute,
*-----------------------------------------------------------------------------
*/
-static void vmwareQueryBestSize(ScrnInfoPtr pScrn, Bool motion,
- short vid_w, short vid_h, short drw_w,
- short drw_h, unsigned int *p_w,
- unsigned int *p_h, pointer data)
+static void
+vmwareQueryBestSize(ScrnInfoPtr pScrn, Bool motion,
+ short vid_w, short vid_h, short drw_w,
+ short drw_h, unsigned int *p_w,
+ unsigned int *p_h, pointer data)
{
*p_w = (drw_w + 1) & ~1;
*p_h = drw_h;