xf86-vmware 10.16.5

This commit is contained in:
matthieu 2008-10-12 21:49:04 +00:00
parent b0080daeec
commit 46f0f1dd2e
5 changed files with 135 additions and 61 deletions

View File

@ -1,6 +1,6 @@
#! /bin/sh #! /bin/sh
# Guess values for system-dependent variables and create Makefiles. # 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>. # 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. # Identity of this package.
PACKAGE_NAME='xf86-video-vmware' PACKAGE_NAME='xf86-video-vmware'
PACKAGE_TARNAME='xf86-video-vmware' PACKAGE_TARNAME='xf86-video-vmware'
PACKAGE_VERSION='10.16.4' PACKAGE_VERSION='10.16.5'
PACKAGE_STRING='xf86-video-vmware 10.16.4' PACKAGE_STRING='xf86-video-vmware 10.16.5'
PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg' PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg'
ac_unique_file="Makefile.am" 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. # 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. # This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF 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]... Usage: $0 [OPTION]... [VAR=VALUE]...
@ -1040,7 +1040,7 @@ fi
if test -n "$ac_init_help"; then if test -n "$ac_init_help"; then
case $ac_init_help in 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 esac
cat <<\_ACEOF cat <<\_ACEOF
@ -1193,7 +1193,7 @@ fi
test -n "$ac_init_help" && exit 0 test -n "$ac_init_help" && exit 0
if $ac_init_version; then if $ac_init_version; then
cat <<\_ACEOF cat <<\_ACEOF
xf86-video-vmware configure 10.16.4 xf86-video-vmware configure 10.16.5
generated by GNU Autoconf 2.59 generated by GNU Autoconf 2.59
Copyright (C) 2003 Free Software Foundation, Inc. Copyright (C) 2003 Free Software Foundation, Inc.
@ -1207,7 +1207,7 @@ cat >&5 <<_ACEOF
This file contains any messages produced by compilers while This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake. 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 generated by GNU Autoconf 2.59. Invocation command line was
$ $0 $@ $ $0 $@
@ -1810,7 +1810,7 @@ fi
# Define the identity of the package. # Define the identity of the package.
PACKAGE='xf86-video-vmware' PACKAGE='xf86-video-vmware'
VERSION='10.16.4' VERSION='10.16.5'
cat >>confdefs.h <<_ACEOF cat >>confdefs.h <<_ACEOF
@ -21333,7 +21333,7 @@ _ASBOX
} >&5 } >&5
cat >&5 <<_CSEOF 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 generated by GNU Autoconf 2.59. Invocation command line was
CONFIG_FILES = $CONFIG_FILES CONFIG_FILES = $CONFIG_FILES
@ -21396,7 +21396,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\ 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, configured by $0, generated by GNU Autoconf 2.59,
with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"

View File

@ -22,7 +22,7 @@
AC_PREREQ(2.57) AC_PREREQ(2.57)
AC_INIT([xf86-video-vmware], AC_INIT([xf86-video-vmware],
10.16.4, 10.16.5,
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
xf86-video-vmware) xf86-video-vmware)

View File

@ -83,7 +83,7 @@ char rcsId_vmware[] =
#define VMWARE_DRIVER_NAME "vmware" #define VMWARE_DRIVER_NAME "vmware"
#define VMWARE_MAJOR_VERSION 10 #define VMWARE_MAJOR_VERSION 10
#define VMWARE_MINOR_VERSION 16 #define VMWARE_MINOR_VERSION 16
#define VMWARE_PATCHLEVEL 4 #define VMWARE_PATCHLEVEL 5
#define VMWARE_DRIVER_VERSION \ #define VMWARE_DRIVER_VERSION \
(VMWARE_MAJOR_VERSION * 65536 + VMWARE_MINOR_VERSION * 256 + VMWARE_PATCHLEVEL) (VMWARE_MAJOR_VERSION * 65536 + VMWARE_MINOR_VERSION * 256 + VMWARE_PATCHLEVEL)
#define VMWARE_DRIVER_VERSION_STRING \ #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 #if VMWARE_DRIVER_FUNC
static Bool static Bool
VMWareDriverFunc(ScrnInfoPtr pScrn, VMWareDriverFunc(ScrnInfoPtr pScrn,

View File

@ -243,6 +243,11 @@ DisplayModeRec *VMWAREAddDisplayMode(
int height int height
); );
Bool vmwareIsRegionEqual(
const RegionPtr reg1,
const RegionPtr reg2
);
/* vmwarecurs.c */ /* vmwarecurs.c */
Bool vmwareCursorInit( Bool vmwareCursorInit(
ScreenPtr pScr ScreenPtr pScr

View File

@ -393,7 +393,8 @@ vmwareOffscreenFree(VMWAREOffscreenPtr memptr)
*----------------------------------------------------------------------------- *-----------------------------------------------------------------------------
*/ */
Bool vmwareVideoEnabled(VMWAREPtr pVMWARE) Bool
vmwareVideoEnabled(VMWAREPtr pVMWARE)
{ {
return ((pVMWARE->vmwareCapability & SVGA_CAP_EXTENDED_FIFO) && return ((pVMWARE->vmwareCapability & SVGA_CAP_EXTENDED_FIFO) &&
(pVMWARE->vmwareFIFO[SVGA_FIFO_CAPABILITIES] & (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); ScrnInfoPtr pScrn = infoFromScreen(pScreen);
XF86VideoAdaptorPtr *overlayAdaptors, *newAdaptors = NULL; XF86VideoAdaptorPtr *overlayAdaptors, *newAdaptors = NULL;
@ -486,7 +488,8 @@ Bool vmwareVideoInit(ScreenPtr pScreen)
*----------------------------------------------------------------------------- *-----------------------------------------------------------------------------
*/ */
void vmwareVideoEnd(ScreenPtr pScreen) void
vmwareVideoEnd(ScreenPtr pScreen)
{ {
ScrnInfoPtr pScrn = infoFromScreen(pScreen); ScrnInfoPtr pScrn = infoFromScreen(pScreen);
VMWAREPtr pVMWARE = VMWAREPTR(pScrn); 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); VMWAREPtr pVMWARE = VMWAREPTR(pScrn);
XF86VideoAdaptorPtr adaptor; XF86VideoAdaptorPtr adaptor;
@ -614,12 +618,13 @@ static XF86VideoAdaptorPtr vmwareVideoSetup(ScrnInfoPtr pScrn)
*----------------------------------------------------------------------------- *-----------------------------------------------------------------------------
*/ */
static int vmwareVideoInitStream(ScrnInfoPtr pScrn, VMWAREVideoPtr pVid, static int
short src_x, short src_y, short drw_x, vmwareVideoInitStream(ScrnInfoPtr pScrn, VMWAREVideoPtr pVid,
short drw_y, short src_w, short src_h, short src_x, short src_y, short drw_x,
short drw_w, short drw_h, int format, short drw_y, short src_w, short src_h,
unsigned char *buf, short width, short drw_w, short drw_h, int format,
short height, RegionPtr clipBoxes) unsigned char *buf, short width,
short height, RegionPtr clipBoxes)
{ {
VMWAREPtr pVMWARE = VMWAREPTR(pScrn); VMWAREPtr pVMWARE = VMWAREPTR(pScrn);
int i; int i;
@ -689,9 +694,10 @@ static int vmwareVideoInitStream(ScrnInfoPtr pScrn, VMWAREVideoPtr pVid,
*----------------------------------------------------------------------------- *-----------------------------------------------------------------------------
*/ */
static int vmwareVideoInitAttributes(ScrnInfoPtr pScrn, VMWAREVideoPtr pVid, static int
int format, unsigned short width, vmwareVideoInitAttributes(ScrnInfoPtr pScrn, VMWAREVideoPtr pVid,
unsigned short height) int format, unsigned short width,
unsigned short height)
{ {
int size; int size;
VMWAREVideoFmtData *fmtData; VMWAREVideoFmtData *fmtData;
@ -732,12 +738,13 @@ static int vmwareVideoInitAttributes(ScrnInfoPtr pScrn, VMWAREVideoPtr pVid,
*----------------------------------------------------------------------------- *-----------------------------------------------------------------------------
*/ */
static int vmwareVideoPlay(ScrnInfoPtr pScrn, VMWAREVideoPtr pVid, static int
short src_x, short src_y, short drw_x, vmwareVideoPlay(ScrnInfoPtr pScrn, VMWAREVideoPtr pVid,
short drw_y, short src_w, short src_h, short src_x, short src_y, short drw_x,
short drw_w, short drw_h, int format, short drw_y, short src_w, short src_h,
unsigned char *buf, short width, short drw_w, short drw_h, int format,
short height, RegionPtr clipBoxes) unsigned char *buf, short width,
short height, RegionPtr clipBoxes)
{ {
VMWAREPtr pVMWARE = VMWAREPTR(pScrn); VMWAREPtr pVMWARE = VMWAREPTR(pScrn);
uint32 *fifoItem; uint32 *fifoItem;
@ -826,7 +833,7 @@ static int vmwareVideoPlay(ScrnInfoPtr pScrn, VMWAREVideoPtr pVid,
/* /*
* Update the clipList and paint the colorkey, if required. * 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); REGION_COPY(pScrn->pScreen, &pVid->clipBoxes, clipBoxes);
if (pVid->isAutoPaintColorkey) { if (pVid->isAutoPaintColorkey) {
xf86XVFillKeyHelper(pScrn->pScreen, pVid->colorKey, clipBoxes); 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 { struct PACKED _body {
uint32 escape; uint32 escape;
@ -904,8 +912,9 @@ static void vmwareVideoFlush(VMWAREPtr pVMWARE, uint32 streamId)
*----------------------------------------------------------------------------- *-----------------------------------------------------------------------------
*/ */
static void vmwareVideoSetOneReg(VMWAREPtr pVMWARE, uint32 streamId, static void
uint32 regId, uint32 value) vmwareVideoSetOneReg(VMWAREPtr pVMWARE, uint32 streamId,
uint32 regId, uint32 value)
{ {
struct PACKED _item { struct PACKED _item {
uint32 regId; 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; uint32 id, colorKey, flags;
Bool isAutoPaintColorkey; Bool isAutoPaintColorkey;
@ -1019,18 +1029,20 @@ static void vmwareVideoEndStream(ScrnInfoPtr pScrn, VMWAREVideoPtr pVid)
*/ */
#ifdef HAVE_XORG_SERVER_1_0_99_901 #ifdef HAVE_XORG_SERVER_1_0_99_901
static int vmwareXvPutImage(ScrnInfoPtr pScrn, short src_x, short src_y, static int
short drw_x, short drw_y, short src_w, short src_h, vmwareXvPutImage(ScrnInfoPtr pScrn, short src_x, short src_y,
short drw_w, short drw_h, int format, short drw_x, short drw_y, short src_w, short src_h,
unsigned char *buf, short width, short height, short drw_w, short drw_h, int format,
Bool sync, RegionPtr clipBoxes, pointer data, unsigned char *buf, short width, short height,
DrawablePtr dst) Bool sync, RegionPtr clipBoxes, pointer data,
DrawablePtr dst)
#else #else
static int vmwareXvPutImage(ScrnInfoPtr pScrn, short src_x, short src_y, static int
short drw_x, short drw_y, short src_w, short src_h, vmwareXvPutImage(ScrnInfoPtr pScrn, short src_x, short src_y,
short drw_w, short drw_h, int format, short drw_x, short drw_y, short src_w, short src_h,
unsigned char *buf, short width, short height, short drw_w, short drw_h, int format,
Bool sync, RegionPtr clipBoxes, pointer data) unsigned char *buf, short width, short height,
Bool sync, RegionPtr clipBoxes, pointer data)
#endif #endif
{ {
VMWAREPtr pVMWARE = VMWAREPTR(pScrn); 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; VMWAREVideoPtr pVid = data;
VMWAREPtr pVMWARE = VMWAREPTR(pScrn); VMWAREPtr pVMWARE = VMWAREPTR(pScrn);
@ -1107,10 +1120,10 @@ static void vmwareStopVideo(ScrnInfoPtr pScrn, pointer data, Bool Cleanup)
*----------------------------------------------------------------------------- *-----------------------------------------------------------------------------
*/ */
static int vmwareQueryImageAttributes(ScrnInfoPtr pScrn, int format, static int
unsigned short *width, vmwareQueryImageAttributes(ScrnInfoPtr pScrn, int format,
unsigned short *height, int *pitches, unsigned short *width, unsigned short *height,
int *offsets) int *pitches, int *offsets)
{ {
INT32 size, tmp; INT32 size, tmp;
@ -1184,8 +1197,9 @@ static int vmwareQueryImageAttributes(ScrnInfoPtr pScrn, int format,
*----------------------------------------------------------------------------- *-----------------------------------------------------------------------------
*/ */
static int vmwareSetPortAttribute(ScrnInfoPtr pScrn, Atom attribute, static int
INT32 value, pointer data) vmwareSetPortAttribute(ScrnInfoPtr pScrn, Atom attribute,
INT32 value, pointer data)
{ {
VMWAREVideoPtr pVid = (VMWAREVideoPtr) data; VMWAREVideoPtr pVid = (VMWAREVideoPtr) data;
Atom xvColorKey = MAKE_ATOM("XV_COLORKEY"); Atom xvColorKey = MAKE_ATOM("XV_COLORKEY");
@ -1223,8 +1237,9 @@ static int vmwareSetPortAttribute(ScrnInfoPtr pScrn, Atom attribute,
*----------------------------------------------------------------------------- *-----------------------------------------------------------------------------
*/ */
static int vmwareGetPortAttribute(ScrnInfoPtr pScrn, Atom attribute, static int
INT32 *value, pointer data) vmwareGetPortAttribute(ScrnInfoPtr pScrn, Atom attribute,
INT32 *value, pointer data)
{ {
VMWAREVideoPtr pVid = (VMWAREVideoPtr) data; VMWAREVideoPtr pVid = (VMWAREVideoPtr) data;
Atom xvColorKey = MAKE_ATOM("XV_COLORKEY"); Atom xvColorKey = MAKE_ATOM("XV_COLORKEY");
@ -1267,10 +1282,11 @@ static int vmwareGetPortAttribute(ScrnInfoPtr pScrn, Atom attribute,
*----------------------------------------------------------------------------- *-----------------------------------------------------------------------------
*/ */
static void vmwareQueryBestSize(ScrnInfoPtr pScrn, Bool motion, static void
short vid_w, short vid_h, short drw_w, vmwareQueryBestSize(ScrnInfoPtr pScrn, Bool motion,
short drw_h, unsigned int *p_w, short vid_w, short vid_h, short drw_w,
unsigned int *p_h, pointer data) short drw_h, unsigned int *p_w,
unsigned int *p_h, pointer data)
{ {
*p_w = (drw_w + 1) & ~1; *p_w = (drw_w + 1) & ~1;
*p_h = drw_h; *p_h = drw_h;