xserver-xorg-video-vmware: Changes to 'debian-unstable'
ChangeLog | 118 +++++++++++++++++++++++++++++++++++++++++++++
configure.ac | 2
debian/changelog | 10 +++
debian/control | 1
debian/rules | 4 +
saa/saa.c | 4 -
saa/saa.h | 4 +
saa/saa_priv.h | 1
saa/saa_render.c | 4 +
src/Makefile.am | 1
src/compat-api.h | 99 +++++++++++++++++++++++++++++++++++++
src/vmware.c | 42 +++++++---------
src/vmware.h | 5 -
src/vmware_common.h | 2
src/vmwarecurs.c | 17 +++---
src/vmwarevideo.c | 5 +
vmwgfx/vmwgfx_crtc.c | 6 +-
vmwgfx/vmwgfx_dri2.c | 4 -
vmwgfx/vmwgfx_driver.c | 74 +++++++++++++---------------
vmwgfx/vmwgfx_driver.h | 7 +-
vmwgfx/vmwgfx_saa.c | 4 -
vmwgfx/vmwgfx_tex_video.c | 6 +-
vmwgfx/vmwgfx_xa_surface.c | 2
23 files changed, 328 insertions(+), 94 deletions(-)
New commits:
commit 29c81bd5f6818231001f8a487962e687112ac9dd
Author: Julien Cristau <jcristau@debian.org>
Date: Sun Sep 8 21:12:07 2013 +0200
Upload to unstable
diff --git a/debian/changelog b/debian/changelog
index e950a86..35a50b5 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-xserver-xorg-video-vmware (1:13.0.1-1) UNRELEASED; urgency=low
+xserver-xorg-video-vmware (1:13.0.1-1) unstable; urgency=low
* New upstream release
@@ -6,7 +6,7 @@ xserver-xorg-video-vmware (1:13.0.1-1) UNRELEASED; urgency=low
* Add build-dep on libxatracker-dev for 3d support (closes: #675977)
* Disable silent build rules.
- -- Timo Aaltonen <tjaalton@ubuntu.com> Thu, 02 Aug 2012 10:46:43 +0300
+ -- Julien Cristau <jcristau@debian.org> Sun, 08 Sep 2013 21:11:48 +0200
xserver-xorg-video-vmware (1:12.0.2-1) unstable; urgency=low
commit 2b0f354b83a4662ba575dd0974ff74472b1c188c
Author: Julien Cristau <jcristau@debian.org>
Date: Sun Sep 8 21:06:13 2013 +0200
Disable silent build rules.
diff --git a/debian/changelog b/debian/changelog
index 74d83a6..e950a86 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -4,6 +4,7 @@ xserver-xorg-video-vmware (1:13.0.1-1) UNRELEASED; urgency=low
[ Julien Cristau ]
* Add build-dep on libxatracker-dev for 3d support (closes: #675977)
+ * Disable silent build rules.
-- Timo Aaltonen <tjaalton@ubuntu.com> Thu, 02 Aug 2012 10:46:43 +0300
diff --git a/debian/rules b/debian/rules
index a0d81d2..304c7ee 100755
--- a/debian/rules
+++ b/debian/rules
@@ -2,7 +2,9 @@
# Enable unit test client tool:
override_dh_auto_configure:
- dh_auto_configure -- --enable-vmwarectrl-client
+ dh_auto_configure -- \
+ --enable-vmwarectrl-client \
+ --disable-silent-rules
# Install in debian/tmp to retain control through dh_install:
override_dh_auto_install:
commit f20147ebdae0eddde361203dea81571cf2a3584a
Author: Julien Cristau <jcristau@debian.org>
Date: Sun Sep 8 21:04:42 2013 +0200
Add build-dep on libxatracker-dev for 3d support (closes: #675977)
diff --git a/debian/changelog b/debian/changelog
index 47b8eca..74d83a6 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -2,6 +2,9 @@ xserver-xorg-video-vmware (1:13.0.1-1) UNRELEASED; urgency=low
* New upstream release
+ [ Julien Cristau ]
+ * Add build-dep on libxatracker-dev for 3d support (closes: #675977)
+
-- Timo Aaltonen <tjaalton@ubuntu.com> Thu, 02 Aug 2012 10:46:43 +0300
xserver-xorg-video-vmware (1:12.0.2-1) unstable; urgency=low
diff --git a/debian/control b/debian/control
index 430948e..8f000dd 100644
--- a/debian/control
+++ b/debian/control
@@ -19,6 +19,7 @@ Build-Depends:
libdrm-dev [!hurd-i386],
libxext-dev,
libx11-dev,
+ libxatracker-dev,
Standards-Version: 3.9.1
Vcs-Git: git://git.debian.org/git/pkg-xorg/driver/xserver-xorg-video-vmware
Vcs-Browser: http://git.debian.org/?p=pkg-xorg/driver/xserver-xorg-video-vmware.git
commit 12ad0602ec3b2bc9322601c2935b413b1731685a
Author: Julien Cristau <jcristau@debian.org>
Date: Sun Sep 8 21:00:53 2013 +0200
Bump changelogs
diff --git a/ChangeLog b/ChangeLog
index accf25c..57f46d8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,59 @@
+commit b3345886332ee2b9fd1348dc2cd36257dfd71986
+Author: Jakob Bornecrantz <jakob@vmware.com>
+Date: Wed Apr 17 12:03:32 2013 +0200
+
+ Bump the version number to 13.0.1
+
+commit d13a6334fe76f4e869b2cb8c0a6a13c185b1bedd
+Author: Loïc Yhuel <loic.yhuel@gmail.com>
+Date: Thu Apr 11 11:29:10 2013 +0200
+
+ vmwgfx: Use myGlyphs to fix crashes
+
+ Tested-by: Christian Hesse <mail@eworm.de>
+ Reviewed-by: Jakob Bornecrantz <jakob@vmware.com>
+ Signed-off-by: Loïc Yhuel <loic.yhuel@gmail.com>
+ Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
+
+commit 23d87c92b7211cc5249eefe4ab3a2c7f370e279e
+Author: Zack Rusin <zackr@vmware.com>
+Date: Thu Feb 14 14:33:01 2013 -0800
+
+ Kill mibstore
+
+ It was a noop for at least 5 years and it has been removed.
+
+ Signed-off-by: Zack Rusin <zackr@vmware.com>
+
+commit 686859fba16ed2616c38bbe5d4e38abf4c5b7ae9
+Author: Zack Rusin <zackr@vmware.com>
+Date: Tue Jan 15 12:05:45 2013 -0800
+
+ Bump the version number to 13.0.0
+
+ New abi and various fixes
+
+ Signed-off-by: Zack Rusin <zackr@vmware.com>
+
+commit adf375f3d400e51b1e445e89de6bd82be0bb4ef3
+Author: Zack Rusin <zackr@vmware.com>
+Date: Thu Dec 6 16:40:13 2012 -0500
+
+ xf86-video-vmware 12.0.99.901
+
+ Internal release for a round of QE testing
+
+ Signed-off-by: Zack Rusin <zackr@vmware.com>
+
+commit 007bed30270ca9548dfe6e359972b56cbb8e2f13
+Author: Jakob Bornecrantz <jakob@vmware.com>
+Date: Tue May 29 23:01:14 2012 +0200
+
+ vmwgfx: Guard against null rotate pixmap in shadow destroy
+
+ Reviewed-by: Thomas Hellström <thellstrom@vmware.com>
+ Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
+
commit e5ac80d8f72963313358e31cfb1ab98583e26f23
Author: Dave Airlie <airlied@redhat.com>
Date: Tue Jul 3 13:50:30 2012 +0100
diff --git a/debian/changelog b/debian/changelog
index d01fe85..47b8eca 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,6 +1,6 @@
-xserver-xorg-video-vmware (1:12.0.2+git.e5ac80d8-1) UNRELEASED; urgency=low
+xserver-xorg-video-vmware (1:13.0.1-1) UNRELEASED; urgency=low
- * New upstream snapshot to build against xserver 1.13.
+ * New upstream release
-- Timo Aaltonen <tjaalton@ubuntu.com> Thu, 02 Aug 2012 10:46:43 +0300
commit b3345886332ee2b9fd1348dc2cd36257dfd71986
Author: Jakob Bornecrantz <jakob@vmware.com>
Date: Wed Apr 17 12:03:32 2013 +0200
Bump the version number to 13.0.1
diff --git a/configure.ac b/configure.ac
index 424fb92..0631bcc 100644
--- a/configure.ac
+++ b/configure.ac
@@ -23,7 +23,7 @@
# Initialize Autoconf
AC_PREREQ([2.60])
AC_INIT([xf86-video-vmware],
- [13.0.0],
+ [13.0.1],
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
[xf86-video-vmware])
AC_CONFIG_SRCDIR([Makefile.am])
commit d13a6334fe76f4e869b2cb8c0a6a13c185b1bedd
Author: Loïc Yhuel <loic.yhuel@gmail.com>
Date: Thu Apr 11 11:29:10 2013 +0200
vmwgfx: Use myGlyphs to fix crashes
Tested-by: Christian Hesse <mail@eworm.de>
Reviewed-by: Jakob Bornecrantz <jakob@vmware.com>
Signed-off-by: Loïc Yhuel <loic.yhuel@gmail.com>
Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
diff --git a/saa/saa_render.c b/saa/saa_render.c
index c69f2c9..c6ce68c 100644
--- a/saa/saa_render.c
+++ b/saa/saa_render.c
@@ -406,6 +406,8 @@ saa_render_setup(ScreenPtr pScreen)
saa_wrap(sscreen, ps, Trapezoids, saa_trapezoids);
saa_wrap(sscreen, ps, Triangles, saa_triangles);
saa_wrap(sscreen, ps, Composite, saa_composite);
+ saa_wrap(sscreen, ps, Glyphs, miGlyphs);
+ saa_wrap(sscreen, ps, UnrealizeGlyph, miUnrealizeGlyph);
}
}
@@ -419,6 +421,8 @@ saa_render_takedown(ScreenPtr pScreen)
saa_unwrap(sscreen, ps, Trapezoids);
saa_unwrap(sscreen, ps, Triangles);
saa_unwrap(sscreen, ps, Composite);
+ saa_unwrap(sscreen, ps, Glyphs);
+ saa_unwrap(sscreen, ps, UnrealizeGlyph);
}
}
#endif
commit 23d87c92b7211cc5249eefe4ab3a2c7f370e279e
Author: Zack Rusin <zackr@vmware.com>
Date: Thu Feb 14 14:33:01 2013 -0800
Kill mibstore
It was a noop for at least 5 years and it has been removed.
Signed-off-by: Zack Rusin <zackr@vmware.com>
diff --git a/saa/saa_priv.h b/saa/saa_priv.h
index 6652054..5d81453 100644
--- a/saa/saa_priv.h
+++ b/saa/saa_priv.h
@@ -48,7 +48,6 @@
#include "pixmapstr.h"
#include "windowstr.h"
#include "servermd.h"
-#include "mibstore.h"
#include "colormapst.h"
#include "gcstruct.h"
#include "input.h"
diff --git a/src/vmware.c b/src/vmware.c
index 41201f1..6b74e14 100644
--- a/src/vmware.c
+++ b/src/vmware.c
@@ -23,7 +23,6 @@ char rcsId_vmware[] =
#include "xf86Pci.h" /* pci */
#include "mipointer.h" /* sw cursor */
-#include "mibstore.h" /* backing store */
#include "micmap.h" /* mi color map */
#include "vgaHW.h" /* VGA hardware */
#include "fb.h"
@@ -1483,7 +1482,6 @@ VMWAREScreenInit(SCREEN_INIT_ARGS_DECL)
* If backing store is to be supported (as is usually the case),
* initialise it.
*/
- miInitializeBackingStore(pScreen);
xf86SetBackingStore(pScreen);
xf86SetSilkenMouse(pScreen);
diff --git a/vmwgfx/vmwgfx_driver.c b/vmwgfx/vmwgfx_driver.c
index 9959ffb..7863ba2 100644
--- a/vmwgfx/vmwgfx_driver.c
+++ b/vmwgfx/vmwgfx_driver.c
@@ -1036,7 +1036,6 @@ drv_screen_init(SCREEN_INIT_ARGS_DECL)
(ms->only_hw_presents) ? "enabled" : "disabled");
}
- miInitializeBackingStore(pScreen);
xf86SetBackingStore(pScreen);
xf86SetSilkenMouse(pScreen);
miDCInitialize(pScreen, xf86GetPointerScreenFuncs());
commit 686859fba16ed2616c38bbe5d4e38abf4c5b7ae9
Author: Zack Rusin <zackr@vmware.com>
Date: Tue Jan 15 12:05:45 2013 -0800
Bump the version number to 13.0.0
New abi and various fixes
Signed-off-by: Zack Rusin <zackr@vmware.com>
diff --git a/configure.ac b/configure.ac
index 444e3fb..424fb92 100644
--- a/configure.ac
+++ b/configure.ac
@@ -23,7 +23,7 @@
# Initialize Autoconf
AC_PREREQ([2.60])
AC_INIT([xf86-video-vmware],
- [12.0.99.901],
+ [13.0.0],
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
[xf86-video-vmware])
AC_CONFIG_SRCDIR([Makefile.am])
commit adf375f3d400e51b1e445e89de6bd82be0bb4ef3
Author: Zack Rusin <zackr@vmware.com>
Date: Thu Dec 6 16:40:13 2012 -0500
xf86-video-vmware 12.0.99.901
Internal release for a round of QE testing
Signed-off-by: Zack Rusin <zackr@vmware.com>
diff --git a/configure.ac b/configure.ac
index d57a3c1..444e3fb 100644
--- a/configure.ac
+++ b/configure.ac
@@ -23,7 +23,7 @@
# Initialize Autoconf
AC_PREREQ([2.60])
AC_INIT([xf86-video-vmware],
- [12.0.2],
+ [12.0.99.901],
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
[xf86-video-vmware])
AC_CONFIG_SRCDIR([Makefile.am])
commit 007bed30270ca9548dfe6e359972b56cbb8e2f13
Author: Jakob Bornecrantz <jakob@vmware.com>
Date: Tue May 29 23:01:14 2012 +0200
vmwgfx: Guard against null rotate pixmap in shadow destroy
Reviewed-by: Thomas Hellström <thellstrom@vmware.com>
Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
diff --git a/vmwgfx/vmwgfx_crtc.c b/vmwgfx/vmwgfx_crtc.c
index eaf87b2..fec04c0 100644
--- a/vmwgfx/vmwgfx_crtc.c
+++ b/vmwgfx/vmwgfx_crtc.c
@@ -250,8 +250,12 @@ crtc_shadow_create(xf86CrtcPtr crtc, void *data, int width, int height)
static void
crtc_shadow_destroy(xf86CrtcPtr crtc, PixmapPtr rotate_pixmap, void *data)
{
- ScreenPtr pScreen = rotate_pixmap->drawable.pScreen;
+ ScreenPtr pScreen;
+ if (rotate_pixmap == NULL)
+ return;
+
+ pScreen = rotate_pixmap->drawable.pScreen;
pScreen->DestroyPixmap(rotate_pixmap);
}
commit 405d30c7312a1e46a7a87de36f762b7918084908
Author: Timo Aaltonen <Timo Aaltonen tjaalton@cc.hut.fi>
Date: Thu Aug 2 11:08:55 2012 +0300
fix the revision
diff --git a/debian/changelog b/debian/changelog
index 2b49a76..d01fe85 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-xserver-xorg-video-vmware (1:12.0.2+git.e5ac80d8-1ubuntu1) UNRELEASED; urgency=low
+xserver-xorg-video-vmware (1:12.0.2+git.e5ac80d8-1) UNRELEASED; urgency=low
* New upstream snapshot to build against xserver 1.13.
commit a97b93e5437a9a3df4c8d6f09419727419704477
Author: Timo Aaltonen <Timo Aaltonen tjaalton@cc.hut.fi>
Date: Thu Aug 2 11:05:11 2012 +0300
update the changelogs
diff --git a/ChangeLog b/ChangeLog
index 2a5d2ce..accf25c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,65 @@
+commit e5ac80d8f72963313358e31cfb1ab98583e26f23
+Author: Dave Airlie <airlied@redhat.com>
+Date: Tue Jul 3 13:50:30 2012 +0100
+
+ vmware: avoid warnings about shadowing 'i'
+
+ Signed-off-by: Dave Airlie <airlied@redhat.com>
+
+commit 46c0862d205eefa985e36a74391ca392640cb898
+Author: Dave Airlie <airlied@redhat.com>
+Date: Sat Jun 16 14:43:52 2012 +0100
+
+ vmware: drop infoFromScreen inline in favour of new interface
+
+ This also should fix the build regression introduced with the fix
+ for this macro.
+
+ Signed-off-by: Dave Airlie <airlied@redhat.com>
+
+commit 50c01998c7800bc02fd6656cc14efa715bf63e08
+Author: Robert Hooker <sarvatt@ubuntu.com>
+Date: Fri Jun 15 11:56:59 2012 -0400
+
+ vmware: Fix up some warnings after new compat API change.
+
+ Fixes multiple instances of these warnings on x86_64:
+ ../../src/vmware.h:180:5: warning: implicit declaration of function 'xf86ScreenToScrn' [-Wimplicit-function-declaration]
+ ../../src/vmware.h:180:5: warning: nested extern declaration of 'xf86ScreenToScrn' [-Wnested-externs]
+ ../../src/vmware.h:180:5: warning: return makes pointer from integer without a cast [enabled by default]
+ Function `xf86ScreenToScrn' implicitly converted to pointer at ../../src/vmware.h:180
+
+ Reviewed-by: Jakob Bornecrantz <jakob@vmware.com>
+ Signed-off-by: Robert Hooker <sarvatt@ubuntu.com>
+ Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
+
+commit 61df95a86f4997e342d50d7779b00aba2e8849a6
+Author: Dave Airlie <airlied@redhat.com>
+Date: Wed Jun 6 09:58:01 2012 +0100
+
+ vmware: port vmware driver to new compat API
+
+ This is a port of the vmware driver to the new compat API.
+
+ Tested-by: Jakob Bornecrantz <jakob@vmware.com>
+ Reviewed-by: Jakob Bornecrantz <jakob@vmware.com>
+ Signed-off-by: Dave Airlie <airlied@redhat.com>
+ Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
+
+commit 46cdf0ed0ad9df66f36f95e27b209d454f67d526
+Author: Brian Paul <brianp@vmware.com>
+Date: Fri Apr 20 14:24:26 2012 -0600
+
+ vmwgfx: set the XA_FLAG_SHARED flag for composite dest surfaces
+
+ This fixes a failed assertion in the gallium/svga driver in the
+ svga_texture_get_handle() function. The texture resource wasn't
+ getting created with the PIPE_BIND_SHARED flag so the !cachable
+ assertion would fail and the X session would abort. This didn't
+ happen with release builds.
+
+ Reviewed-by: Jakob Bornecrantz <jakob@vmware.com>
+
commit 4d76cfe5e8e5d594ec357b0ef3339f56eeca9c64
Author: Jakob Bornecrantz <jakob@vmware.com>
Date: Tue Mar 20 22:05:30 2012 +0100
diff --git a/debian/changelog b/debian/changelog
index 5546265..2b49a76 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+xserver-xorg-video-vmware (1:12.0.2+git.e5ac80d8-1ubuntu1) UNRELEASED; urgency=low
+
+ * New upstream snapshot to build against xserver 1.13.
+
+ -- Timo Aaltonen <tjaalton@ubuntu.com> Thu, 02 Aug 2012 10:46:43 +0300
+
xserver-xorg-video-vmware (1:12.0.2-1) unstable; urgency=low
* New upstream release:
commit e5ac80d8f72963313358e31cfb1ab98583e26f23
Author: Dave Airlie <airlied@redhat.com>
Date: Tue Jul 3 13:50:30 2012 +0100
vmware: avoid warnings about shadowing 'i'
Signed-off-by: Dave Airlie <airlied@redhat.com>
diff --git a/src/compat-api.h b/src/compat-api.h
index 6bc946f..205ac59 100644
--- a/src/compat-api.h
+++ b/src/compat-api.h
@@ -46,7 +46,7 @@
#define SCREEN_ARG_TYPE int
#define SCREEN_PTR(arg1) ScreenPtr pScreen = screenInfo.screens[(arg1)]
-#define SCREEN_INIT_ARGS_DECL int i, ScreenPtr pScreen, int argc, char **argv
+#define SCREEN_INIT_ARGS_DECL int scrnIndex, ScreenPtr pScreen, int argc, char **argv
#define BLOCKHANDLER_ARGS_DECL int arg, pointer blockData, pointer pTimeout, pointer pReadmask
#define BLOCKHANDLER_ARGS arg, blockData, pTimeout, pReadmask
commit 46c0862d205eefa985e36a74391ca392640cb898
Author: Dave Airlie <airlied@redhat.com>
Date: Sat Jun 16 14:43:52 2012 +0100
vmware: drop infoFromScreen inline in favour of new interface
This also should fix the build regression introduced with the fix
for this macro.
Signed-off-by: Dave Airlie <airlied@redhat.com>
diff --git a/src/vmware.h b/src/vmware.h
index be113bb..028dff3 100644
--- a/src/vmware.h
+++ b/src/vmware.h
@@ -18,8 +18,6 @@
#include "xf86.h"
#include "xf86_OSproc.h"
-#include "compat-api.h"
-
#include <X11/extensions/panoramiXproto.h>
#ifdef XSERVER_LIBPCIACCESS
@@ -177,10 +175,6 @@ typedef struct {
#define VMWAREPTR(p) ((VMWAREPtr)((p)->driverPrivate))
-static __inline ScrnInfoPtr infoFromScreen(ScreenPtr s) {
- return xf86ScreenToScrn(s);
-}
-
#define MIN(a,b) ((a)<(b)?(a):(b))
#define MAX(a,b) ((a)>(b)?(a):(b))
#define ABS(x) (((x) >= 0) ? (x) : -(x))
diff --git a/src/vmwarecurs.c b/src/vmwarecurs.c
index 2e2effb..93dacc0 100644
--- a/src/vmwarecurs.c
+++ b/src/vmwarecurs.c
@@ -12,6 +12,7 @@ char rcsId_vmwarecurs[] =
#endif
#include "vmware.h"
+#include "vmware_common.h"
#include "bits2pixels.h"
static void VMWAREGetImage(DrawablePtr src, int x, int y, int w, int h,
@@ -110,7 +111,7 @@ vmwareSetCursorColors(ScrnInfoPtr pScrn, int bg, int fg)
static Bool
vmwareUseHWCursor(ScreenPtr pScreen, CursorPtr pCurs)
{
- ScrnInfoPtr pScrn = infoFromScreen(pScreen);
+ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen);
VMWAREPtr pVMWARE = VMWAREPTR(pScrn);
VmwareLog(("UseHWCursor new cursor %p refcnt %i old cursor %p refcnt %i\n",
pCurs, pCurs->refcnt, pVMWARE->oldCurs, pVMWARE->oldCurs ? pVMWARE->oldCurs->refcnt : 0));
@@ -145,7 +146,7 @@ vmwareLoadCursorImage(ScrnInfoPtr pScrn, unsigned char *src )
static Bool
vmwareUseHWCursorARGB(ScreenPtr pScreen, CursorPtr pCurs)
{
- ScrnInfoPtr pScrn = infoFromScreen(pScreen);
+ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen);
VMWAREPtr pVMWARE = VMWAREPTR(pScrn);
VmwareLog(("UseHWCursorARGB new cursor %p refcnt %i old cursor %p refcnt %i\n",
pCurs, pCurs->refcnt, pVMWARE->oldCurs, pVMWARE->oldCurs ? pVMWARE->oldCurs->refcnt : 0));
@@ -283,7 +284,7 @@ Bool
vmwareCursorInit(ScreenPtr pScreen)
{
xf86CursorInfoPtr infoPtr;
- VMWAREPtr pVMWARE = VMWAREPTR(infoFromScreen(pScreen));
+ VMWAREPtr pVMWARE = VMWAREPTR(xf86ScreenToScrn(pScreen));
Bool ret;
TRACEPOINT
@@ -330,7 +331,7 @@ vmwareCursorInit(ScreenPtr pScreen)
void
vmwareCursorCloseScreen(ScreenPtr pScreen)
{
- ScrnInfoPtr pScrn = infoFromScreen(pScreen);
+ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen);
VMWAREPtr pVMWARE = VMWAREPTR(pScrn);
#ifdef RENDER
PictureScreenPtr ps = GetPictureScreenIfSet(pScreen);
@@ -356,7 +357,7 @@ vmwareCursorCloseScreen(ScreenPtr pScreen)
void
vmwareCursorHookWrappers(ScreenPtr pScreen)
{
- VMWAREPtr pVMWARE = VMWAREPTR(infoFromScreen(pScreen));
+ VMWAREPtr pVMWARE = VMWAREPTR(xf86ScreenToScrn(pScreen));
#ifdef RENDER
PictureScreenPtr ps = GetPictureScreenIfSet(pScreen);
#endif
@@ -382,7 +383,7 @@ VMWAREGetImage(DrawablePtr src, int x, int y, int w, int h,
unsigned int format, unsigned long planeMask, char *pBinImage)
{
ScreenPtr pScreen = src->pScreen;
- VMWAREPtr pVMWARE = VMWAREPTR(infoFromScreen(src->pScreen));
+ VMWAREPtr pVMWARE = VMWAREPTR(xf86ScreenToScrn(src->pScreen));
BoxRec box;
Bool hidden = FALSE;
@@ -412,7 +413,7 @@ static void
VMWARECopyWindow(WindowPtr pWin, DDXPointRec ptOldOrg, RegionPtr prgnSrc)
{
ScreenPtr pScreen = pWin->drawable.pScreen;
- VMWAREPtr pVMWARE = VMWAREPTR(infoFromScreen(pWin->drawable.pScreen));
+ VMWAREPtr pVMWARE = VMWAREPTR(xf86ScreenToScrn(pWin->drawable.pScreen));
BoxPtr pBB;
Bool hidden = FALSE;
@@ -448,7 +449,7 @@ VMWAREComposite(CARD8 op, PicturePtr pSrc, PicturePtr pMask,
CARD16 width, CARD16 height)
{
ScreenPtr pScreen = pDst->pDrawable->pScreen;
- VMWAREPtr pVMWARE = VMWAREPTR(infoFromScreen(pScreen));
+ VMWAREPtr pVMWARE = VMWAREPTR(xf86ScreenToScrn(pScreen));
PictureScreenPtr ps = GetPictureScreen(pScreen);
BoxRec box;
Bool hidden = FALSE;
diff --git a/src/vmwarevideo.c b/src/vmwarevideo.c
index 71f21fe..745c71f 100644
--- a/src/vmwarevideo.c
+++ b/src/vmwarevideo.c
@@ -39,6 +39,7 @@
#endif
#include "vmware.h"
+#include "vmware_common.h"
#include "xf86xv.h"
#include "fourcc.h"
#include "svga_escape.h"
@@ -435,7 +436,7 @@ vmwareVideoEnabled(VMWAREPtr pVMWARE)
Bool
vmwareVideoInit(ScreenPtr pScreen)
{
- ScrnInfoPtr pScrn = infoFromScreen(pScreen);
+ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen);
XF86VideoAdaptorPtr *overlayAdaptors, *newAdaptors = NULL;
XF86VideoAdaptorPtr newAdaptor = NULL;
int numAdaptors;
@@ -504,7 +505,7 @@ vmwareVideoInit(ScreenPtr pScreen)
void
vmwareVideoEnd(ScreenPtr pScreen)
{
- ScrnInfoPtr pScrn = infoFromScreen(pScreen);
+ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen);
VMWAREPtr pVMWARE = VMWAREPTR(pScrn);
VMWAREVideoPtr pVid;
int i;
commit 50c01998c7800bc02fd6656cc14efa715bf63e08
Author: Robert Hooker <sarvatt@ubuntu.com>
Date: Fri Jun 15 11:56:59 2012 -0400
vmware: Fix up some warnings after new compat API change.
Fixes multiple instances of these warnings on x86_64:
../../src/vmware.h:180:5: warning: implicit declaration of function 'xf86ScreenToScrn' [-Wimplicit-function-declaration]
../../src/vmware.h:180:5: warning: nested extern declaration of 'xf86ScreenToScrn' [-Wnested-externs]
../../src/vmware.h:180:5: warning: return makes pointer from integer without a cast [enabled by default]
Function `xf86ScreenToScrn' implicitly converted to pointer at ../../src/vmware.h:180
Reviewed-by: Jakob Bornecrantz <jakob@vmware.com>
Signed-off-by: Robert Hooker <sarvatt@ubuntu.com>
Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
diff --git a/src/vmware.h b/src/vmware.h
index 4818e16..be113bb 100644
--- a/src/vmware.h
+++ b/src/vmware.h
@@ -18,6 +18,7 @@
#include "xf86.h"
#include "xf86_OSproc.h"
+#include "compat-api.h"
#include <X11/extensions/panoramiXproto.h>
commit 61df95a86f4997e342d50d7779b00aba2e8849a6
Author: Dave Airlie <airlied@redhat.com>
Date: Wed Jun 6 09:58:01 2012 +0100
vmware: port vmware driver to new compat API
This is a port of the vmware driver to the new compat API.
Tested-by: Jakob Bornecrantz <jakob@vmware.com>
Reviewed-by: Jakob Bornecrantz <jakob@vmware.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
diff --git a/saa/saa.c b/saa/saa.c
index 173c090..f2d68e9 100644
--- a/saa/saa.c
+++ b/saa/saa.c
@@ -594,7 +594,7 @@ saa_set_fallback_debug(ScreenPtr screen, Bool enable)
* screen private, before calling down to the next CloseScreen.
*/
Bool
-saa_close_screen(int i, ScreenPtr pScreen)
+saa_close_screen(CLOSE_SCREEN_ARGS_DECL)
{
struct saa_screen_priv *sscreen = saa_screen(pScreen);
struct saa_driver *driver = sscreen->driver;
@@ -624,7 +624,7 @@ saa_close_screen(int i, ScreenPtr pScreen)
free(sscreen);
- return (*pScreen->CloseScreen) (i, pScreen);
+ return (*pScreen->CloseScreen) (CLOSE_SCREEN_ARGS);
}
struct saa_driver *
diff --git a/saa/saa.h b/saa/saa.h
index c7aa3b6..4e5ced5 100644
--- a/saa/saa.h
+++ b/saa/saa.h
@@ -44,6 +44,8 @@
#include <damage.h>
#include <picturestr.h>
+#include "../src/compat-api.h"
+
#define SAA_VERSION_MAJOR 0
#define SAA_VERSION_MINOR 1
@@ -173,7 +175,7 @@ extern _X_EXPORT RegionPtr
saa_bitmap_to_region(PixmapPtr pPix);
extern _X_EXPORT Bool
-saa_close_screen(int i, ScreenPtr pScreen);
+saa_close_screen(CLOSE_SCREEN_ARGS_DECL);
extern _X_EXPORT Bool
saa_gc_reads_destination(DrawablePtr pDrawable, GCPtr pGC);
diff --git a/src/Makefile.am b/src/Makefile.am
index 04c9e0d..b0dd147 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -37,6 +37,7 @@ endif
vmware_drv_la_SOURCES = \
bits2pixels.c \
bits2pixels.h \
+ compat-api.h \
guest_os.h \
includeCheck.h \
svga_escape.h \
diff --git a/src/compat-api.h b/src/compat-api.h
new file mode 100644
index 0000000..6bc946f
--- /dev/null
+++ b/src/compat-api.h
@@ -0,0 +1,99 @@
+/*
+ * Copyright 2012 Red Hat, Inc.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice (including the next
+ * paragraph) shall be included in all copies or substantial portions of the
+ * Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
+ *
+ * Author: Dave Airlie <airlied@redhat.com>
+ */
+
+/* this file provides API compat between server post 1.13 and pre it,
+ it should be reused inside as many drivers as possible */
+#ifndef COMPAT_API_H
+#define COMPAT_API_H
+
+#ifndef GLYPH_HAS_GLYPH_PICTURE_ACCESSOR
+#define GetGlyphPicture(g, s) GlyphPicture((g))[(s)->myNum]
+#define SetGlyphPicture(g, s, p) GlyphPicture((g))[(s)->myNum] = p
+#endif
+
+#ifndef XF86_HAS_SCRN_CONV
+#define xf86ScreenToScrn(s) xf86Screens[(s)->myNum]
+#define xf86ScrnToScreen(s) screenInfo.screens[(s)->scrnIndex]
+#endif
+
+#ifndef XF86_SCRN_INTERFACE
+
+#define SCRN_ARG_TYPE int
+#define SCRN_INFO_PTR(arg1) ScrnInfoPtr pScrn = xf86Screens[(arg1)]
+
+#define SCREEN_ARG_TYPE int
+#define SCREEN_PTR(arg1) ScreenPtr pScreen = screenInfo.screens[(arg1)]
+
+#define SCREEN_INIT_ARGS_DECL int i, ScreenPtr pScreen, int argc, char **argv
+
+#define BLOCKHANDLER_ARGS_DECL int arg, pointer blockData, pointer pTimeout, pointer pReadmask
+#define BLOCKHANDLER_ARGS arg, blockData, pTimeout, pReadmask
+
+#define CLOSE_SCREEN_ARGS_DECL int scrnIndex, ScreenPtr pScreen
+#define CLOSE_SCREEN_ARGS scrnIndex, pScreen
+
+#define ADJUST_FRAME_ARGS_DECL int arg, int x, int y, int flags
+#define ADJUST_FRAME_ARGS(arg, x, y) (arg)->scrnIndex, x, y, 0
+
+#define SWITCH_MODE_ARGS_DECL int arg, DisplayModePtr mode, int flags
+#define SWITCH_MODE_ARGS(arg, m) (arg)->scrnIndex, m, 0
+
+#define FREE_SCREEN_ARGS_DECL int arg, int flags
+
+#define VT_FUNC_ARGS_DECL int arg, int flags
+#define VT_FUNC_ARGS pScrn->scrnIndex, 0
+
+#define XF86_SCRN_ARG(x) ((x)->scrnIndex)
+#else
+#define SCRN_ARG_TYPE ScrnInfoPtr
+#define SCRN_INFO_PTR(arg1) ScrnInfoPtr pScrn = (arg1)
+
+#define SCREEN_ARG_TYPE ScreenPtr
+#define SCREEN_PTR(arg1) ScreenPtr pScreen = (arg1)
+
+#define SCREEN_INIT_ARGS_DECL ScreenPtr pScreen, int argc, char **argv
+
+#define BLOCKHANDLER_ARGS_DECL ScreenPtr arg, pointer pTimeout, pointer pReadmask
+#define BLOCKHANDLER_ARGS arg, pTimeout, pReadmask
+
+#define CLOSE_SCREEN_ARGS_DECL ScreenPtr pScreen
+#define CLOSE_SCREEN_ARGS pScreen
+
+#define ADJUST_FRAME_ARGS_DECL ScrnInfoPtr arg, int x, int y
+#define ADJUST_FRAME_ARGS(arg, x, y) arg, x, y
+
+#define SWITCH_MODE_ARGS_DECL ScrnInfoPtr arg, DisplayModePtr mode
+#define SWITCH_MODE_ARGS(arg, m) arg, m
+
+#define FREE_SCREEN_ARGS_DECL ScrnInfoPtr arg
+
+#define VT_FUNC_ARGS_DECL ScrnInfoPtr arg
+#define VT_FUNC_ARGS pScrn
+
+#define XF86_SCRN_ARG(x) (x)
+
+#endif
+
+#endif
diff --git a/src/vmware.c b/src/vmware.c
index e3892f1..41201f1 100644
--- a/src/vmware.c
+++ b/src/vmware.c
@@ -901,8 +901,8 @@ VMWAREModeInit(ScrnInfoPtr pScrn, DisplayModePtr mode, Bool rebuildPixmap)
pScrn->pScreen->rootDepth),
(pointer)(pVMWARE->FbBase + pScrn->fbOffset));
- (*pScrn->EnableDisableFBAccess)(pScrn->pScreen->myNum, FALSE);
- (*pScrn->EnableDisableFBAccess)(pScrn->pScreen->myNum, TRUE);
+ (*pScrn->EnableDisableFBAccess)(XF86_SCRN_ARG(pScrn), FALSE);
+ (*pScrn->EnableDisableFBAccess)(XF86_SCRN_ARG(pScrn), TRUE);
}
vgaHWProtect(pScrn, FALSE);
@@ -1018,7 +1018,7 @@ vmwareNextXineramaState(VMWAREPtr pVMWARE)
}
static void
-VMWAREAdjustFrame(int scrnIndex, int x, int y, int flags)
+VMWAREAdjustFrame(ADJUST_FRAME_ARGS_DECL)
{
/* FIXME */
}
@@ -1089,9 +1089,9 @@ VMWAREStopFIFO(ScrnInfoPtr pScrn)
}
static Bool
-VMWARECloseScreen(int scrnIndex, ScreenPtr pScreen)
+VMWARECloseScreen(CLOSE_SCREEN_ARGS_DECL)
{
- ScrnInfoPtr pScrn = xf86Screens[scrnIndex];
+ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen);
VMWAREPtr pVMWARE = VMWAREPTR(pScrn);
ScreenPtr save = &pVMWARE->ScrnFuncs;
@@ -1119,7 +1119,7 @@ VMWARECloseScreen(int scrnIndex, ScreenPtr pScreen)
pScrn->DriverFunc = NULL;
#endif
- return (*pScreen->CloseScreen)(scrnIndex, pScreen);
+ return (*pScreen->CloseScreen)(CLOSE_SCREEN_ARGS);
}
static Bool
@@ -1296,16 +1296,14 @@ vmwareIsRegionEqual(const RegionPtr reg1,
}
static Bool
-VMWAREScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
+VMWAREScreenInit(SCREEN_INIT_ARGS_DECL)
{
- ScrnInfoPtr pScrn;
+ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen);
vgaHWPtr hwp;
VMWAREPtr pVMWARE;
OptionInfoPtr options;
Bool useXinerama = TRUE;
- /* Get the ScrnInfoRec */
- pScrn = xf86Screens[pScreen->myNum];
pVMWARE = VMWAREPTR(pScrn);
@@ -1381,7 +1379,7 @@ VMWAREScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
VMWAREModeInit(pScrn, pScrn->currentMode, FALSE);
/* Set the viewport if supported */
- VMWAREAdjustFrame(scrnIndex, pScrn->frameX0, pScrn->frameY0, 0);
+ VMWAREAdjustFrame(ADJUST_FRAME_ARGS(pScrn, pScrn->frameX0, pScrn->frameY0));
/*
* Setup the screen's visuals, and initialise the framebuffer
@@ -1582,10 +1580,9 @@ VMWAREScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
}
static Bool
-VMWARESwitchMode(int scrnIndex, DisplayModePtr mode, int flags)
-
+VMWARESwitchMode(SWITCH_MODE_ARGS_DECL)
{
- ScrnInfoPtr pScrn = xf86Screens[scrnIndex];
+ SCRN_INFO_PTR(arg);
ScreenPtr pScreen = pScrn->pScreen;
pScreen->mmWidth = (pScreen->width * VMWARE_INCHTOMM +
@@ -1597,9 +1594,9 @@ VMWARESwitchMode(int scrnIndex, DisplayModePtr mode, int flags)
}
static Bool
-VMWAREEnterVT(int scrnIndex, int flags)
+VMWAREEnterVT(VT_FUNC_ARGS_DECL)
{
- ScrnInfoPtr pScrn = xf86Screens[scrnIndex];
+ SCRN_INFO_PTR(arg);
VMWAREPtr pVMWARE = VMWAREPTR(pScrn);
/*
@@ -1616,9 +1613,9 @@ VMWAREEnterVT(int scrnIndex, int flags)
}
static void
-VMWARELeaveVT(int scrnIndex, int flags)
+VMWARELeaveVT(VT_FUNC_ARGS_DECL)
{
- ScrnInfoPtr pScrn = xf86Screens[scrnIndex];
+ SCRN_INFO_PTR(arg);
VMWAREPtr pVMWARE = VMWAREPTR(pScrn);
/*
@@ -1631,17 +1628,18 @@ VMWARELeaveVT(int scrnIndex, int flags)
}
static void
-VMWAREFreeScreen(int scrnIndex, int flags)
+VMWAREFreeScreen(FREE_SCREEN_ARGS_DECL)
{
+ SCRN_INFO_PTR(arg);
/*
* If the vgahw module is used vgaHWFreeHWRec() would be called
* here.
*/
- VMWAREFreeRec(xf86Screens[scrnIndex]);
+ VMWAREFreeRec(pScrn);
}
static ModeStatus
-VMWAREValidMode(int scrnIndex, DisplayModePtr mode, Bool verbose, int flags)
+VMWAREValidMode(SCRN_ARG_TYPE arg, DisplayModePtr mode, Bool verbose, int flags)
Reply to: