xserver-xorg-video-vmware: Changes to 'upstream-unstable'
configure.ac | 10 +++++
src/vmware.c | 93 +++++++++++++++++++++++++++++-------------------------
src/vmware.h | 9 +++--
src/vmwarevideo.c | 8 +---
4 files changed, 67 insertions(+), 53 deletions(-)
New commits:
commit b53bb2ad4c6f6e378cbf82a98cac917736d62740
Author: Vinay Bondhugula <vinayb@vmware.com>
Date: Thu Jun 12 17:34:30 2008 -0400
Prepare for 10.16.2
Bump up version numbers.
diff --git a/configure.ac b/configure.ac
index 163a887..09d70f2 100644
--- a/configure.ac
+++ b/configure.ac
@@ -22,7 +22,7 @@
AC_PREREQ(2.57)
AC_INIT([xf86-video-vmware],
- 10.16.1,
+ 10.16.2,
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
xf86-video-vmware)
diff --git a/src/vmware.c b/src/vmware.c
index f2c4515..e22c038 100644
--- a/src/vmware.c
+++ b/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 1
+#define VMWARE_PATCHLEVEL 2
#define VMWARE_DRIVER_VERSION \
(VMWARE_MAJOR_VERSION * 65536 + VMWARE_MINOR_VERSION * 256 + VMWARE_PATCHLEVEL)
#define VMWARE_DRIVER_VERSION_STRING \
commit 1f7a8390a32852d2ff0039a7d8138a292d17b50a
Author: Vinay Bondhugula <vinayb@vmware.com>
Date: Tue Apr 29 18:29:11 2008 -0400
Fix VMWARE_CTRL and Xinerama Initialization
Move initialization code for the vmware control and xinerama extensions to
VMWAREScreenInit(), so that auto-resize and multi-mon work fine after a user
logs out and logs in again in a graphical display manager.
diff --git a/src/vmware.c b/src/vmware.c
index e4d149d..f2c4515 100644
--- a/src/vmware.c
+++ b/src/vmware.c
@@ -580,7 +580,6 @@ VMWAREPreInit(ScrnInfoPtr pScrn, int flags)
int i;
ClockRange* clockRanges;
IOADDRESS domainIOBase = 0;
- Bool useXinerama = TRUE;
#ifndef BUILD_FOR_420
domainIOBase = pScrn->domainIOBase;
@@ -895,30 +894,6 @@ VMWAREPreInit(ScrnInfoPtr pScrn, int flags)
pScrn->videoRam = pVMWARE->videoRam / 1024;
pScrn->memPhysBase = pVMWARE->memPhysBase;
- /*
- * Init xinerama preferences.
- */
- useXinerama = xf86ReturnOptValBool(options, OPTION_XINERAMA,
- pVMWARE->vmwareCapability & SVGA_CAP_MULTIMON);
- if (useXinerama && !(pVMWARE->vmwareCapability & SVGA_CAP_MULTIMON)) {
- xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
- "Xinerama is not safely supported by the current virtual hardware. "
- "Do not request resolutions that require > 16MB of framebuffer.\n");
- }
-
-
- if (useXinerama && xf86IsOptionSet(options, OPTION_STATIC_XINERAMA)) {
- char *topology = xf86GetOptValString(options, OPTION_STATIC_XINERAMA);
- if (topology) {
- pVMWARE->xineramaState =
- VMWAREParseTopologyString(pScrn, topology, &pVMWARE->xineramaNumOutputs);
-
- pVMWARE->xineramaStatic = pVMWARE->xineramaState != NULL;
-
- xfree(topology);
- }
- }
-
xfree(options);
{
@@ -983,20 +958,6 @@ VMWAREPreInit(ScrnInfoPtr pScrn, int flags)
xf86LoaderReqSymLists(ramdacSymbols, NULL);
}
- /* Initialise VMWARE_CTRL extension. */
- VMwareCtrl_ExtInit(pScrn);
-
- /* Initialise Xinerama extension. */
- if (useXinerama) {
- VMwareXinerama_ExtInit(pScrn);
- }
-
- if (pVMWARE->xinerama && pVMWARE->xineramaStatic) {
- xf86DrvMsg(pScrn->scrnIndex, X_INFO, pVMWARE->xineramaState ?
- "Using static Xinerama.\n" :
- "Failed to configure static Xinerama.\n");
- }
-
return TRUE;
}
@@ -1530,16 +1491,64 @@ VMWAREScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
ScrnInfoPtr pScrn;
vgaHWPtr hwp;
VMWAREPtr pVMWARE;
+ OptionInfoPtr options;
+ Bool useXinerama = TRUE;
/* Get the ScrnInfoRec */
pScrn = xf86Screens[pScreen->myNum];
pVMWARE = VMWAREPTR(pScrn);
+
+ xf86CollectOptions(pScrn, NULL);
+ if (!(options = xalloc(sizeof(VMWAREOptions))))
+ return FALSE;
+ memcpy(options, VMWAREOptions, sizeof(VMWAREOptions));
+ xf86ProcessOptions(pScrn->scrnIndex, pScrn->options, options);
+
+ /*
+ * Init xinerama preferences.
+ */
+ useXinerama = xf86ReturnOptValBool(options, OPTION_XINERAMA,
+ pVMWARE->vmwareCapability & SVGA_CAP_MULTIMON);
+ if (useXinerama && !(pVMWARE->vmwareCapability & SVGA_CAP_MULTIMON)) {
+ xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
+ "Xinerama is not safely supported by the current virtual hardware. "
+ "Do not request resolutions that require > 16MB of framebuffer.\n");
+ }
+
+
+ if (useXinerama && xf86IsOptionSet(options, OPTION_STATIC_XINERAMA)) {
+ char *topology = xf86GetOptValString(options, OPTION_STATIC_XINERAMA);
+ if (topology) {
+ pVMWARE->xineramaState =
+ VMWAREParseTopologyString(pScrn, topology, &pVMWARE->xineramaNumOutputs);
+
+ pVMWARE->xineramaStatic = pVMWARE->xineramaState != NULL;
+
+ xfree(topology);
+ }
+ }
+
+ xfree(options);
+
+ /* Initialise VMWARE_CTRL extension. */
+ VMwareCtrl_ExtInit(pScrn);
+
+ /* Initialise Xinerama extension. */
+ if (useXinerama) {
+ VMwareXinerama_ExtInit(pScrn);
+ }
+
+ if (pVMWARE->xinerama && pVMWARE->xineramaStatic) {
+ xf86DrvMsg(pScrn->scrnIndex, X_INFO, pVMWARE->xineramaState ?
+ "Using static Xinerama.\n" :
+ "Failed to configure static Xinerama.\n");
+ }
+
/*
* If using the vgahw module, its data structures and related
* things are typically initialised/mapped here.
*/
-
hwp = VGAHWPTR(pScrn);
vgaHWGetIOBase(hwp);
@@ -1572,7 +1581,6 @@ VMWAREScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
* acceptable. To deal with this, call miSetVisualTypes with
* the appropriate visual mask.
*/
-
if (pScrn->bitsPerPixel > 8) {
if (!miSetVisualTypes(pScrn->depth, TrueColorMask,
pScrn->rgbBits, pScrn->defaultVisual)) {
@@ -1681,7 +1689,6 @@ VMWAREScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
* Install colourmap functions. If using the vgahw module,
* vgaHandleColormaps would usually be called here.
*/
-
if (!fbCreateDefColormap(pScreen))
return FALSE;
commit db027200474684c0aa4b9387f3ed53b2e5f24478
Author: Vinay Bondhugula <vinayb@vmware.com>
Date: Tue Apr 22 14:18:45 2008 -0400
More xorg and xfree86 backwards compatibility
Push most of the xorg-server version checking into the configure script. With
this change, unmodified driver source compiles in the XFree86 4.3 tree.
diff --git a/configure.ac b/configure.ac
index 8d20681..163a887 100644
--- a/configure.ac
+++ b/configure.ac
@@ -58,6 +58,14 @@ XORG_DRIVER_CHECK_EXT(XV, videoproto)
PKG_CHECK_MODULES(XORG, [xorg-server >= 1.0.1 xproto fontsproto $REQUIRED_MODULES])
sdkdir=$(pkg-config --variable=sdkdir xorg-server)
+PKG_CHECK_EXISTS([xorg-server >= 1.1.0],
+ [AC_DEFINE([HAVE_XORG_SERVER_1_1_0], 1,
+ [Has version 1.1.0 or greater of the Xserver])])
+
+PKG_CHECK_EXISTS([xorg-server >= 1.0.99.901],
+ [AC_DEFINE([HAVE_XORG_SERVER_1_0_99_901], 1,
+ [Has version 1.0.99.901 or greater of the Xserver])])
+
# Checks for libraries.
# Checks for header files.
diff --git a/src/vmware.h b/src/vmware.h
index 63bb831..bb1234d 100644
--- a/src/vmware.h
+++ b/src/vmware.h
@@ -8,8 +8,12 @@
#ifndef VMWARE_H
#define VMWARE_H
-#include "xorgVersion.h"
-#if XORG_VERSION_CURRENT >= XORG_VERSION_NUMERIC(7, 1, 0, 0, 0) || XORG_VERSION_CURRENT < XORG_VERSION_NUMERIC(2, 0, 0, 0, 0)
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#ifdef HAVE_XORG_SERVER_1_1_0
#include <string.h>
#endif
@@ -19,7 +23,6 @@
#include <X11/extensions/panoramiXproto.h>
-#include "xorg-server.h"
#ifdef XSERVER_LIBPCIACCESS
#include <pciaccess.h>
#endif
diff --git a/src/vmwarevideo.c b/src/vmwarevideo.c
index d6ff4b7..a0a7781 100644
--- a/src/vmwarevideo.c
+++ b/src/vmwarevideo.c
@@ -45,10 +45,6 @@
#include "svga_overlay.h"
#include <X11/extensions/Xv.h>
-/*
- * Need this to figure out which prototype to use for XvPutImage
- */
-#include "xorgVersion.h"
#define MAKE_ATOM(a) MakeAtom(a, sizeof(a) - 1, TRUE)
@@ -170,7 +166,7 @@ typedef VMWAREVideoRec *VMWAREVideoPtr;
/*
* Callback functions
*/
-#if XORG_VERSION_CURRENT > XORG_VERSION_NUMERIC(7, 0, 0, 0, 0) || XORG_VERSION_CURRENT < XORG_VERSION_NUMERIC(2, 0, 0, 0, 0)
+#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 image,
@@ -968,7 +964,7 @@ static void vmwareVideoEndStream(ScrnInfoPtr pScrn, VMWAREVideoPtr pVid)
*-----------------------------------------------------------------------------
*/
-#if XORG_VERSION_CURRENT > XORG_VERSION_NUMERIC(7, 0, 0, 0, 0) || XORG_VERSION_CURRENT < XORG_VERSION_NUMERIC(4, 0, 0, 0, 0)
+#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,
Reply to: