diff options
author | Parabola <dev@list.parabolagnulinux.org> | 2012-04-03 14:54:55 +0000 |
---|---|---|
committer | Parabola <dev@list.parabolagnulinux.org> | 2012-04-03 14:54:55 +0000 |
commit | b618c3d0693aec564c6746238fd05d94e31d3b76 (patch) | |
tree | 4a4834f3097bba25dba1adeba4324080c1b4bf7b /extra/xf86-video-sis | |
parent | 8cb5196780766f47b595410eed8ddbee2e8add08 (diff) |
Tue Apr 3 14:54:45 UTC 2012
Diffstat (limited to 'extra/xf86-video-sis')
-rw-r--r-- | extra/xf86-video-sis/git-f5dafa24.patch | 1654 |
1 files changed, 0 insertions, 1654 deletions
diff --git a/extra/xf86-video-sis/git-f5dafa24.patch b/extra/xf86-video-sis/git-f5dafa24.patch deleted file mode 100644 index 8c15b974b..000000000 --- a/extra/xf86-video-sis/git-f5dafa24.patch +++ /dev/null @@ -1,1654 +0,0 @@ -diff --git a/configure.ac b/configure.ac -index 33c0d65..62ad933 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -20,54 +20,53 @@ - # - # Process this file with autoconf to produce a configure script - --AC_PREREQ(2.57) -+# Initialize Autoconf -+AC_PREREQ([2.60]) - AC_INIT([xf86-video-sis], -- 0.10.3, -+ [0.10.3], - [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], -- xf86-video-sis) -- -+ [xf86-video-sis]) - AC_CONFIG_SRCDIR([Makefile.am]) --AM_CONFIG_HEADER([config.h]) -+AC_CONFIG_HEADERS([config.h]) - AC_CONFIG_AUX_DIR(.) - -+# Initialize Automake - AM_INIT_AUTOMAKE([foreign dist-bzip2]) -- - AM_MAINTAINER_MODE - --# Require xorg-macros: XORG_DEFAULT_OPTIONS -+# Require X.Org macros 1.8 or later for MAN_SUBSTS set by XORG_MANPAGE_SECTIONS - m4_ifndef([XORG_MACROS_VERSION], -- [m4_fatal([must install xorg-macros 1.3 or later before running autoconf/autogen])]) --XORG_MACROS_VERSION(1.3) -+ [m4_fatal([must install xorg-macros 1.8 or later before running autoconf/autogen])]) -+XORG_MACROS_VERSION(1.8) - XORG_DEFAULT_OPTIONS - --# Checks for programs. -+# Initialize libtool - AC_DISABLE_STATIC - AC_PROG_LIBTOOL --AC_PROG_CC --XORG_PROG_RAWCPP - - AH_TOP([#include "xorg-server.h"]) - -+# Define a configure option for an alternate module directory - AC_ARG_WITH(xorg-module-dir, -- AC_HELP_STRING([--with-xorg-module-dir=DIR], -+ AS_HELP_STRING([--with-xorg-module-dir=DIR], - [Default xorg module directory [[default=$libdir/xorg/modules]]]), - [moduledir="$withval"], - [moduledir="$libdir/xorg/modules"]) - --AC_ARG_ENABLE(dri, AC_HELP_STRING([--disable-dri], -+AC_ARG_ENABLE(dri, AS_HELP_STRING([--disable-dri], - [Disable DRI support [[default=auto]]]), - [DRI="$enableval"], - [DRI=auto]) - --# Checks for extensions -+# Store the list of server defined optional extensions in REQUIRED_MODULES - XORG_DRIVER_CHECK_EXT(XINERAMA, xineramaproto) - XORG_DRIVER_CHECK_EXT(RANDR, randrproto) - XORG_DRIVER_CHECK_EXT(RENDER, renderproto) - XORG_DRIVER_CHECK_EXT(XV, videoproto) - XORG_DRIVER_CHECK_EXT(DPMSExtension, xextproto) - --# Checks for pkg-config packages --PKG_CHECK_MODULES(XORG, [xorg-server >= 1.0.99.901 xproto fontsproto xf86dgaproto $REQUIRED_MODULES]) -+# Obtain compiler/linker options for the driver dependencies -+PKG_CHECK_MODULES(XORG, [xorg-server >= 1.0.99.901 xproto fontsproto xf86dgaproto >= 2.1 $REQUIRED_MODULES]) - PKG_CHECK_MODULES(XEXT, [xextproto >= 7.0.99.1], - HAVE_XEXTPROTO_71="yes"; AC_DEFINE(HAVE_XEXTPROTO_71, 1, [xextproto 7.1 available]), - HAVE_XEXTPROTO_71="no") -@@ -76,9 +75,6 @@ sdkdir=`$PKG_CONFIG --variable=sdkdir xorg-server` - - # Checks for libraries. - --# Checks for header files. --AC_HEADER_STDC -- - if test "$DRI" != no; then - AC_CHECK_FILE([${sdkdir}/dri.h], - [have_dri_h="yes"], [have_dri_h="no"]) -@@ -103,8 +99,8 @@ AC_MSG_RESULT([$DRI]) - AM_CONDITIONAL(DRI, test x$DRI = xyes) - if test "$DRI" = yes; then - PKG_CHECK_MODULES(DRI, [libdrm >= 2.0 xf86driproto]) -- AC_DEFINE(XF86DRI,1,[Enable DRI driver support]) -- AC_DEFINE(XF86DRI_DEVEL,1,[Enable developmental DRI driver support]) -+ AC_DEFINE(SISDRI,1,[Enable DRI driver support]) -+ AC_DEFINE(SISDRI_DEVEL,1,[Enable developmental DRI driver support]) - fi - - # technically this should be a configure flag. meh. -@@ -118,20 +114,19 @@ AC_CHECK_DECL(XSERVER_LIBPCIACCESS, - CPPFLAGS="$SAVE_CPPFLAGS" - - if test "x$XSERVER_LIBPCIACCESS" = xyes; then -- PKG_CHECK_MODULES([PCIACCESS], [pciaccess >= 0.10]) -+ PKG_CHECK_MODULES([PCIACCESS], [pciaccess >= 0.12.901]) - XORG_CFLAGS="$XORG_CFLAGS $PCIACCESS_CFLAGS" - fi - AM_CONDITIONAL(XSERVER_LIBPCIACCESS, test "x$XSERVER_LIBPCIACCESS" = xyes) - --AC_SUBST([DRI_CFLAGS]) --AC_SUBST([XORG_CFLAGS]) - AC_SUBST([moduledir]) - - DRIVER_NAME=sis - AC_SUBST([DRIVER_NAME]) - --AC_OUTPUT([ -- Makefile -- src/Makefile -- man/Makefile -+AC_CONFIG_FILES([ -+ Makefile -+ src/Makefile -+ man/Makefile - ]) -+AC_OUTPUT -diff --git a/man/Makefile.am b/man/Makefile.am -index 1b26ac2..9ceb36f 100644 ---- a/man/Makefile.am -+++ b/man/Makefile.am -@@ -31,39 +31,9 @@ EXTRA_DIST = @DRIVER_NAME@.man - - CLEANFILES = $(driverman_DATA) - --SED = sed -- --# Strings to replace in man pages --XORGRELSTRING = @PACKAGE_STRING@ -- XORGMANNAME = X Version 11 -- --MANDEFS = \ -- -D__vendorversion__="\"$(XORGRELSTRING)\" \"$(XORGMANNAME)\"" \ -- -D__appmansuffix__=$(APP_MAN_SUFFIX) \ -- -D__filemansuffix__=$(FILE_MAN_SUFFIX) \ -- -D__libmansuffix__=$(LIB_MAN_SUFFIX) \ -- -D__miscmansuffix__=$(MISC_MAN_SUFFIX) \ -- -D__drivermansuffix__=$(DRIVER_MAN_SUFFIX) \ -- -D__adminmansuffix__=$(ADMIN_MAN_SUFFIX) \ -- -D__xconfigfile__=xorg.conf \ -- -D__xservername__=Xorg -- --# Translate XCOMM into pound sign with sed, rather than passing -DXCOMM=XCOMM --# to cpp, because that trick does not work on all ANSI C preprocessors. --# Delete line numbers from the cpp output (-P is not portable, I guess). --# Allow XCOMM to be preceded by whitespace and provide a means of generating --# output lines with trailing backslashes. --# Allow XHASH to always be substituted, even in cases where XCOMM isn't. -- --CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -- -e '/^\#line *[0-9][0-9]* *.*$$/d' \ -- -e '/^[ ]*XCOMM$$/s/XCOMM/\#/' \ -- -e '/^[ ]*XCOMM[^a-zA-Z0-9_]/s/XCOMM/\#/' \ -- -e '/^[ ]*XHASH/s/XHASH/\#/' \ -- -e '/\@\@$$/s/\@\@$$/\\/' -- - SUFFIXES = .$(DRIVER_MAN_SUFFIX) .man - -+# String replacements in MAN_SUBSTS now come from xorg-macros.m4 via configure - .man.$(DRIVER_MAN_SUFFIX): -- $(RAWCPP) $(RAWCPPFLAGS) $(MANDEFS) $(EXTRAMANDEFS) < $< | $(CPP_SED_MAGIC) > $@ -+ $(AM_V_GEN)$(SED) $(MAN_SUBSTS) < $< > $@ - -diff --git a/man/sis.man b/man/sis.man -index 9ae4a1b..578bb68 100644 ---- a/man/sis.man -+++ b/man/sis.man -@@ -1,17 +1,5 @@ --.\" $XFree86$ --.\" $XdotOrg$ - .\" shorthand for double quote that works everywhere. - .ds q \N'34' --#ifdef __xservername__ --#define __myservername__ __xservername__ --#else --#define __myservername__ XFree86 --#endif --#ifdef __xconfigfile__ --#define __myxconfigfile__ __xconfigfile__ --#else --#define __myxconfigfile__ XF86Config --#endif - .TH SIS __drivermansuffix__ __vendorversion__ - .SH NAME - sis \- SiS and XGI video driver -@@ -25,7 +13,7 @@ sis \- SiS and XGI video driver - .fi - .SH DESCRIPTION - .B sis --is an __myservername__ driver for SiS (Silicon Integrated Systems) and XGI video -+is an __xservername__ driver for SiS (Silicon Integrated Systems) and XGI video - chips. The driver is accelerated and provides support for colordepths of 8, 16 - and 24 bpp. XVideo, Render and other extensions are supported as well. - .SH SUPPORTED HARDWARE -@@ -60,7 +48,7 @@ for SiS315, 55x, 330, 661/741/76x (plus M, FX, MX, GX variants thereof), 340 - and all XGI chips. - .PP - .SH CONFIGURATION DETAILS --Please refer to __myxconfigfile__(__filemansuffix__) for general configuration -+Please refer to __xconfigfile__(__filemansuffix__) for general configuration - details. This section only covers configuration details specific to this - driver. - .PP -@@ -428,11 +416,7 @@ The amount is to be specified in megabyte, the default is 8. - .SH "KNOWN BUGS" - none. - .SH "SEE ALSO" --#ifdef __xservername__ - __xservername__(__appmansuffix__), __xconfigfile__(__filemansuffix__), Xserver(__appmansuffix__), X(__miscmansuffix__) --#else --XFree86(1), XF86Config(__filemansuffix__), xf86config(1), Xserver(1), X(__miscmansuffix__) --#endif - .PP - .B "http://www.winischhofer.eu/linuxsisvga.shtml" - for more information and updates -diff --git a/src/initextx.c b/src/initextx.c -index 5c00398..1e84d0f 100644 ---- a/src/initextx.c -+++ b/src/initextx.c -@@ -238,10 +238,10 @@ SiSBuildBuiltInModeList(ScrnInfoPtr pScrn, BOOLEAN includelcdmodes, BOOLEAN isfo - continue; - } - -- if(!(new = xalloc(sizeof(DisplayModeRec)))) return first; -+ if(!(new = malloc(sizeof(DisplayModeRec)))) return first; - memset(new, 0, sizeof(DisplayModeRec)); -- if(!(new->name = xalloc(10))) { -- xfree(new); -+ if(!(new->name = malloc(10))) { -+ free(new); - return first; - } - if(!first) first = new; -@@ -385,11 +385,11 @@ SiSBuildBuiltInModeList(ScrnInfoPtr pScrn, BOOLEAN includelcdmodes, BOOLEAN isfo - } - } - -- if(!(new = xalloc(sizeof(DisplayModeRec)))) return first; -+ if(!(new = malloc(sizeof(DisplayModeRec)))) return first; - - memset(new, 0, sizeof(DisplayModeRec)); -- if(!(new->name = xalloc(12))) { -- xfree(new); -+ if(!(new->name = malloc(12))) { -+ free(new); - return first; - } - if(!first) first = new; -@@ -470,11 +470,11 @@ SiSBuildBuiltInModeList(ScrnInfoPtr pScrn, BOOLEAN includelcdmodes, BOOLEAN isfo - - if(pSiS->SiS_Pr->CP_DataValid[i]) { - -- if(!(new = xalloc(sizeof(DisplayModeRec)))) return first; -+ if(!(new = malloc(sizeof(DisplayModeRec)))) return first; - - memset(new, 0, sizeof(DisplayModeRec)); -- if(!(new->name = xalloc(10))) { -- xfree(new); -+ if(!(new->name = malloc(10))) { -+ free(new); - return first; - } - if(!first) first = new; -diff --git a/src/osdef.h b/src/osdef.h -index cd6b907..5776910 100644 ---- a/src/osdef.h -+++ b/src/osdef.h -@@ -110,12 +110,12 @@ - #warning sisfb will not work! - #endif - --#define OutPortByte(p,v) outb((u8)(v),(IOADDRESS)(p)) --#define OutPortWord(p,v) outw((u16)(v),(IOADDRESS)(p)) --#define OutPortLong(p,v) outl((u32)(v),(IOADDRESS)(p)) --#define InPortByte(p) inb((IOADDRESS)(p)) --#define InPortWord(p) inw((IOADDRESS)(p)) --#define InPortLong(p) inl((IOADDRESS)(p)) -+#define OutPortByte(p,v) outb((u8)(v),(unsigned long)(p)) -+#define OutPortWord(p,v) outw((u16)(v),(unsigned long)(p)) -+#define OutPortLong(p,v) outl((u32)(v),(unsigned long)(p)) -+#define InPortByte(p) inb((unsigned long)(p)) -+#define InPortWord(p) inw((unsigned long)(p)) -+#define InPortLong(p) inl((unsigned long)(p)) - #define SiS_SetMemory(MemoryAddress,MemorySize,value) memset_io(MemoryAddress, value, MemorySize) - - #endif /* LINUX_KERNEL */ -@@ -129,12 +129,12 @@ - #define SIS300 - #define SIS315H - --#define OutPortByte(p,v) outSISREG((IOADDRESS)(p),(CARD8)(v)) --#define OutPortWord(p,v) outSISREGW((IOADDRESS)(p),(CARD16)(v)) --#define OutPortLong(p,v) outSISREGL((IOADDRESS)(p),(CARD32)(v)) --#define InPortByte(p) inSISREG((IOADDRESS)(p)) --#define InPortWord(p) inSISREGW((IOADDRESS)(p)) --#define InPortLong(p) inSISREGL((IOADDRESS)(p)) -+#define OutPortByte(p,v) outSISREG((unsigned long)(p),(CARD8)(v)) -+#define OutPortWord(p,v) outSISREGW((unsigned long)(p),(CARD16)(v)) -+#define OutPortLong(p,v) outSISREGL((unsigned long)(p),(CARD32)(v)) -+#define InPortByte(p) inSISREG((unsigned long)(p)) -+#define InPortWord(p) inSISREGW((unsigned long)(p)) -+#define InPortLong(p) inSISREGL((unsigned long)(p)) - #define SiS_SetMemory(MemoryAddress,MemorySize,value) memset(MemoryAddress, value, MemorySize) - - #endif /* XF86 */ -diff --git a/src/sis.h b/src/sis.h -index 400b83f..f2ca3a9 100644 ---- a/src/sis.h -+++ b/src/sis.h -@@ -86,6 +86,14 @@ - #include "xf86cmap.h" - #include "vbe.h" - -+#if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 12 -+#define _swapl(x, n) swapl(x,n) -+#define _swaps(x, n) swaps(x,n) -+#else -+#define _swapl(x, n) swapl(x) -+#define _swaps(x, n) swaps(x) -+#endif -+ - #define SIS_HaveDriverFuncs 0 - - #undef SISISXORG6899900 -@@ -173,7 +181,13 @@ - - #undef SISHAVEDRMWRITE - #undef SISNEWDRI --#ifdef XF86DRI -+ -+/* if the server was built without DRI support, force-disable DRI */ -+#ifndef XF86DRI -+#undef SISDRI -+#endif -+ -+#ifdef SISDRI - #if XF86_VERSION_CURRENT >= XF86_VERSION_NUMERIC(4,2,99,3,0) - #define SISHAVEDRMWRITE - #endif -@@ -187,7 +201,7 @@ - #include "dri.h" - #include "GL/glxint.h" - #include "sis_dri.h" --#endif /* XF86DRI */ -+#endif /* SISDRI */ - - /* Configurable stuff: ------------------------------------- */ - -@@ -251,7 +265,6 @@ - #endif - - /* Need that for SiSCtrl and Pseudo-Xinerama */ --#define NEED_REPLIES /* ? */ - #define EXTENSION_PROC_ARGS void * - #include "extnsionst.h" /* required */ - #include <X11/extensions/panoramiXproto.h> /* required */ -@@ -805,7 +818,7 @@ typedef struct { - ScrnInfoPtr pScrn_2; - UChar *BIOS; - struct SiS_Private *SiS_Pr; --#ifdef XF86DRI -+#ifdef SISDRI - SISAGPHTYPE agpHandle; - ULong agpAddr; - UChar *agpBase; -@@ -971,7 +984,7 @@ typedef struct { - void *RealFbBase; /* Real VRAM virtual linear address (for DHM and SiS76x UMA skipping) */ - CARD32 IOAddress; /* MMIO physical address */ - void *IOBase; /* MMIO linear address */ -- IOADDRESS IODBase; /* Base of PIO memory area */ -+ unsigned long IODBase; /* Base of PIO memory area */ - #ifdef __alpha__ - void *IOBaseDense; /* MMIO for Alpha platform */ - #endif -@@ -1085,7 +1098,7 @@ typedef struct { - unsigned int cmdQueueSize_div2; - unsigned int cmdQueueSize_div4; - unsigned int cmdQueueSize_4_3; --#ifdef XF86DRI -+#ifdef SISDRI - SISAGPHTYPE agpHandle; - ULong agpAddr; - UChar *agpBase; -@@ -1144,7 +1157,7 @@ typedef struct { - - /* DRI */ - Bool loadDRI; --#ifdef XF86DRI -+#ifdef SISDRI - Bool directRenderingEnabled; - DRIInfoPtr pDRIInfo; - int drmSubFD; -@@ -1348,7 +1361,7 @@ typedef struct { - Bool skipswitchcheck; - unsigned int VBFlagsInit; - DisplayModePtr currentModeLast; -- IOADDRESS MyPIOOffset; -+ unsigned long MyPIOOffset; - Bool OverruleRanges; - Bool BenchMemCpy; - Bool NeedCopyFastVidCpy; -diff --git a/src/sis6326_video.c b/src/sis6326_video.c -index c6b18e2..66352b7 100644 ---- a/src/sis6326_video.c -+++ b/src/sis6326_video.c -@@ -170,7 +170,7 @@ void SIS6326InitVideo(ScreenPtr pScreen) - adaptors = &newAdaptor; - } else { - /* need to free this someplace */ -- newAdaptors = xalloc((num_adaptors + 1) * sizeof(XF86VideoAdaptorPtr*)); -+ newAdaptors = malloc((num_adaptors + 1) * sizeof(XF86VideoAdaptorPtr*)); - if(newAdaptors) { - memcpy(newAdaptors, adaptors, num_adaptors * - sizeof(XF86VideoAdaptorPtr)); -@@ -185,7 +185,7 @@ void SIS6326InitVideo(ScreenPtr pScreen) - xf86XVScreenInit(pScreen, adaptors, num_adaptors); - - if(newAdaptors) -- xfree(newAdaptors); -+ free(newAdaptors); - } - - /* client libraries expect an encoding */ -@@ -531,7 +531,7 @@ SIS6326SetupImageVideo(ScreenPtr pScreen) - return NULL; - #endif - -- if(!(adapt = xcalloc(1, sizeof(XF86VideoAdaptorRec) + -+ if(!(adapt = calloc(1, sizeof(XF86VideoAdaptorRec) + - sizeof(SISPortPrivRec) + - sizeof(DevUnion)))) - return NULL; -diff --git a/src/sis_dga.c b/src/sis_dga.c -index d358645..16b0ee4 100644 ---- a/src/sis_dga.c -+++ b/src/sis_dga.c -@@ -150,18 +150,18 @@ SISSetupDGAMode( - - if(pMode->HDisplay != otherPitch) { - -- newmodes = xrealloc(modes, (*num + 2) * sizeof(DGAModeRec)); -+ newmodes = realloc(modes, (*num + 2) * sizeof(DGAModeRec)); - oneMore = TRUE; - - } else { - -- newmodes = xrealloc(modes, (*num + 1) * sizeof(DGAModeRec)); -+ newmodes = realloc(modes, (*num + 1) * sizeof(DGAModeRec)); - oneMore = FALSE; - - } - - if(!newmodes) { -- xfree(modes); -+ free(modes); - return NULL; - } - modes = newmodes; -diff --git a/src/sis_dri.c b/src/sis_dri.c -index 3a476a2..97ed951 100644 ---- a/src/sis_dri.c -+++ b/src/sis_dri.c -@@ -149,19 +149,19 @@ SISInitVisualConfigs(ScreenPtr pScreen) - case 32: - numConfigs = (useZ16) ? 8 : 16; - -- if(!(pConfigs = (__GLXvisualConfig*)xcalloc(sizeof(__GLXvisualConfig), -+ if(!(pConfigs = (__GLXvisualConfig*)calloc(sizeof(__GLXvisualConfig), - numConfigs))) { - return FALSE; - } -- if(!(pSISConfigs = (SISConfigPrivPtr)xcalloc(sizeof(SISConfigPrivRec), -+ if(!(pSISConfigs = (SISConfigPrivPtr)calloc(sizeof(SISConfigPrivRec), - numConfigs))) { -- xfree(pConfigs); -+ free(pConfigs); - return FALSE; - } -- if(!(pSISConfigPtrs = (SISConfigPrivPtr*)xcalloc(sizeof(SISConfigPrivPtr), -+ if(!(pSISConfigPtrs = (SISConfigPrivPtr*)calloc(sizeof(SISConfigPrivPtr), - numConfigs))) { -- xfree(pConfigs); -- xfree(pSISConfigs); -+ free(pConfigs); -+ free(pSISConfigs); - return FALSE; - } - for(i=0; i<numConfigs; i++) pSISConfigPtrs[i] = &pSISConfigs[i]; -@@ -319,7 +319,7 @@ SISDRIScreenInit(ScreenPtr pScreen) - pDRIInfo->busIdString = DRICreatePCIBusID(pSIS->PciInfo); - } else { - #endif -- pDRIInfo->busIdString = xalloc(64); -+ pDRIInfo->busIdString = malloc(64); - sprintf(pDRIInfo->busIdString, "PCI:%d:%d:%d", - pSIS->PciBus, pSIS->PciDevice, pSIS->PciFunc); - #ifdef SISHAVECREATEBUSID -@@ -383,7 +383,7 @@ SISDRIScreenInit(ScreenPtr pScreen) - pDRIInfo->SAREASize = SAREA_MAX; - #endif - -- if(!(pSISDRI = (SISDRIPtr)xcalloc(sizeof(SISDRIRec), 1))) { -+ if(!(pSISDRI = (SISDRIPtr)calloc(sizeof(SISDRIRec), 1))) { - DRIDestroyInfoRec(pSIS->pDRIInfo); - pSIS->pDRIInfo = 0; - return FALSE; -@@ -401,7 +401,7 @@ SISDRIScreenInit(ScreenPtr pScreen) - - if(!DRIScreenInit(pScreen, pDRIInfo, &pSIS->drmSubFD)) { - xf86DrvMsg(pScreen->myNum, X_ERROR, "[dri] DRIScreenInit failed. Disabling the DRI.\n"); -- xfree(pDRIInfo->devPrivate); -+ free(pDRIInfo->devPrivate); - pDRIInfo->devPrivate = 0; - DRIDestroyInfoRec(pSIS->pDRIInfo); - pSIS->pDRIInfo = 0; -@@ -794,7 +794,7 @@ SISDRICloseScreen(ScreenPtr pScreen) - - if(pSIS->pDRIInfo) { - if(pSIS->pDRIInfo->devPrivate) { -- xfree(pSIS->pDRIInfo->devPrivate); -+ free(pSIS->pDRIInfo->devPrivate); - pSIS->pDRIInfo->devPrivate = NULL; - } - DRIDestroyInfoRec(pSIS->pDRIInfo); -@@ -802,12 +802,12 @@ SISDRICloseScreen(ScreenPtr pScreen) - } - - if(pSIS->pVisualConfigs) { -- xfree(pSIS->pVisualConfigs); -+ free(pSIS->pVisualConfigs); - pSIS->pVisualConfigs = NULL; - } - - if(pSIS->pVisualConfigsPriv) { -- xfree(pSIS->pVisualConfigsPriv); -+ free(pSIS->pVisualConfigsPriv); - pSIS->pVisualConfigsPriv = NULL; - } - -diff --git a/src/sis_driver.c b/src/sis_driver.c -index d95b5f1..7a5be4e 100644 ---- a/src/sis_driver.c -+++ b/src/sis_driver.c -@@ -74,8 +74,7 @@ - - #include "sis_driver.h" - --#define _XF86DGA_SERVER_ --#include <X11/extensions/xf86dgastr.h> -+#include <X11/extensions/xf86dgaproto.h> - - #include "globals.h" - -@@ -86,11 +85,35 @@ - #include <X11/extensions/dpms.h> - #endif - -+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 5 -+#include <inputstr.h> /* for inputInfo */ -+#endif -+ - --#ifdef XF86DRI -+#ifdef SISDRI - #include "dri.h" - #endif - -+/* -+ * LookupWindow was removed with video abi 11. -+ */ -+#if (GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 4) -+#ifndef DixGetAttrAccess -+#define DixGetAttrAccess (1<<4) -+#endif -+#endif -+ -+#if (GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 2) -+static inline int -+dixLookupWindow(WindowPtr *pWin, XID id, ClientPtr client, Mask access) -+{ -+ *pWin = LookupWindow(id, client); -+ if (!*pWin) -+ return BadWindow; -+ return Success; -+} -+#endif -+ - /* Globals (yes, these ARE really required to be global) */ - - #ifdef SISUSEDEVPORT -@@ -299,9 +322,9 @@ SISFreeRec(ScrnInfoPtr pScrn) - pSiSEnt = pSiS->entityPrivate; - #endif - -- if(pSiS->pstate) xfree(pSiS->pstate); -+ if(pSiS->pstate) free(pSiS->pstate); - pSiS->pstate = NULL; -- if(pSiS->fonts) xfree(pSiS->fonts); -+ if(pSiS->fonts) free(pSiS->fonts); - pSiS->fonts = NULL; - - #ifdef SISDUALHEAD -@@ -312,11 +335,11 @@ SISFreeRec(ScrnInfoPtr pScrn) - * and we need the BIOS image and SiS_Private for the first - * head. - */ -- if(pSiSEnt->BIOS) xfree(pSiSEnt->BIOS); -+ if(pSiSEnt->BIOS) free(pSiSEnt->BIOS); - pSiSEnt->BIOS = pSiS->BIOS = NULL; -- if(pSiSEnt->SiS_Pr) xfree(pSiSEnt->SiS_Pr); -+ if(pSiSEnt->SiS_Pr) free(pSiSEnt->SiS_Pr); - pSiSEnt->SiS_Pr = pSiS->SiS_Pr = NULL; -- if(pSiSEnt->RenderAccelArray) xfree(pSiSEnt->RenderAccelArray); -+ if(pSiSEnt->RenderAccelArray) free(pSiSEnt->RenderAccelArray); - pSiSEnt->RenderAccelArray = pSiS->RenderAccelArray = NULL; - pSiSEnt->pScrn_1 = NULL; - } else { -@@ -327,21 +350,21 @@ SISFreeRec(ScrnInfoPtr pScrn) - } - } else { - #endif -- if(pSiS->BIOS) xfree(pSiS->BIOS); -+ if(pSiS->BIOS) free(pSiS->BIOS); - pSiS->BIOS = NULL; -- if(pSiS->SiS_Pr) xfree(pSiS->SiS_Pr); -+ if(pSiS->SiS_Pr) free(pSiS->SiS_Pr); - pSiS->SiS_Pr = NULL; -- if(pSiS->RenderAccelArray) xfree(pSiS->RenderAccelArray); -+ if(pSiS->RenderAccelArray) free(pSiS->RenderAccelArray); - pSiS->RenderAccelArray = NULL; - #ifdef SISDUALHEAD - } - #endif - #ifdef SISMERGED -- if(pSiS->CRT2HSync) xfree(pSiS->CRT2HSync); -+ if(pSiS->CRT2HSync) free(pSiS->CRT2HSync); - pSiS->CRT2HSync = NULL; -- if(pSiS->CRT2VRefresh) xfree(pSiS->CRT2VRefresh); -+ if(pSiS->CRT2VRefresh) free(pSiS->CRT2VRefresh); - pSiS->CRT2VRefresh = NULL; -- if(pSiS->MetaModes) xfree(pSiS->MetaModes); -+ if(pSiS->MetaModes) free(pSiS->MetaModes); - pSiS->MetaModes = NULL; - if(pSiS->CRT2pScrn) { - if(pSiS->CRT2pScrn->modes) { -@@ -353,10 +376,10 @@ SISFreeRec(ScrnInfoPtr pScrn) - while(pSiS->CRT2pScrn->monitor->Modes) - xf86DeleteMode(&pSiS->CRT2pScrn->monitor->Modes, pSiS->CRT2pScrn->monitor->Modes); - } -- if(pSiS->CRT2pScrn->monitor->DDC) xfree(pSiS->CRT2pScrn->monitor->DDC); -- xfree(pSiS->CRT2pScrn->monitor); -+ if(pSiS->CRT2pScrn->monitor->DDC) free(pSiS->CRT2pScrn->monitor->DDC); -+ free(pSiS->CRT2pScrn->monitor); - } -- xfree(pSiS->CRT2pScrn); -+ free(pSiS->CRT2pScrn); - pSiS->CRT2pScrn = NULL; - } - if(pSiS->CRT1Modes) { -@@ -366,8 +389,8 @@ SISFreeRec(ScrnInfoPtr pScrn) - do { - DisplayModePtr p = pScrn->currentMode->next; - if(pScrn->currentMode->Private) -- xfree(pScrn->currentMode->Private); -- xfree(pScrn->currentMode); -+ free(pScrn->currentMode->Private); -+ free(pScrn->currentMode); - pScrn->currentMode = p; - } while(pScrn->currentMode != pScrn->modes); - } -@@ -380,7 +403,7 @@ SISFreeRec(ScrnInfoPtr pScrn) - #endif - while(pSiS->SISVESAModeList) { - sisModeInfoPtr mp = pSiS->SISVESAModeList->next; -- xfree(pSiS->SISVESAModeList); -+ free(pSiS->SISVESAModeList); - pSiS->SISVESAModeList = mp; - } - if(pSiS->pVbe) vbeFree(pSiS->pVbe); -@@ -392,7 +415,7 @@ SISFreeRec(ScrnInfoPtr pScrn) - - if(pScrn->driverPrivate == NULL) - return; -- xfree(pScrn->driverPrivate); -+ free(pScrn->driverPrivate); - pScrn->driverPrivate = NULL; - } - -@@ -501,7 +524,7 @@ SISProbe(DriverPtr drv, int flags) - numDevSections, drv, &usedChipsXGI); - - /* Free it since we don't need that list after this */ -- xfree(devSections); -+ free(devSections); - - numUsed = numUsedSiS + numUsedXGI; - -@@ -577,8 +600,8 @@ SISProbe(DriverPtr drv, int flags) - - } - -- if(usedChipsSiS) xfree(usedChipsSiS); -- if(usedChipsXGI) xfree(usedChipsXGI); -+ if(usedChipsSiS) free(usedChipsSiS); -+ if(usedChipsXGI) free(usedChipsXGI); - - return foundScreen; - } -@@ -642,10 +665,10 @@ SISCalculateGammaRamp(ScreenPtr pScreen, ScrnInfoPtr pScrn) - if(!(nramp = xf86GetGammaRampSize(pScreen))) return; - - for(i=0; i<3; i++) { -- ramp[i] = (UShort *)xalloc(nramp * sizeof(UShort)); -+ ramp[i] = (UShort *)malloc(nramp * sizeof(UShort)); - if(!ramp[i]) { -- if(ramp[0]) { xfree(ramp[0]); ramp[0] = NULL; } -- if(ramp[1]) { xfree(ramp[1]); ramp[1] = NULL; } -+ if(ramp[0]) { free(ramp[0]); ramp[0] = NULL; } -+ if(ramp[1]) { free(ramp[1]); ramp[1] = NULL; } - return; - } - } -@@ -705,9 +728,9 @@ SISCalculateGammaRamp(ScreenPtr pScreen, ScrnInfoPtr pScrn) - - xf86ChangeGammaRamp(pScreen, nramp, ramp[0], ramp[1], ramp[2]); - -- xfree(ramp[0]); -- xfree(ramp[1]); -- xfree(ramp[2]); -+ free(ramp[0]); -+ free(ramp[1]); -+ free(ramp[2]); - ramp[0] = ramp[1] = ramp[2] = NULL; - } - #endif -@@ -1135,10 +1158,10 @@ SiSCopyModeNLink(ScrnInfoPtr pScrn, DisplayModePtr dest, - DisplayModePtr mode; - int dx = 0,dy = 0; - -- if(!((mode = xalloc(sizeof(DisplayModeRec))))) return dest; -+ if(!((mode = malloc(sizeof(DisplayModeRec))))) return dest; - memcpy(mode, i, sizeof(DisplayModeRec)); -- if(!((mode->Private = xalloc(sizeof(SiSMergedDisplayModeRec))))) { -- xfree(mode); -+ if(!((mode->Private = malloc(sizeof(SiSMergedDisplayModeRec))))) { -+ free(mode); - return dest; - } - ((SiSMergedDisplayModePtr)mode->Private)->CRT1 = i; -@@ -1223,8 +1246,8 @@ SiSCopyModeNLink(ScrnInfoPtr pScrn, DisplayModePtr dest, - xf86DrvMsg(pScrn->scrnIndex, X_ERROR, - "Skipped \"%s\" (%dx%d), not enough video RAM or beyond hardware specs\n", - mode->name, mode->HDisplay, mode->VDisplay); -- xfree(mode->Private); -- xfree(mode); -+ free(mode->Private); -+ free(mode); - - return dest; - } -@@ -2131,10 +2154,10 @@ SiSProcXineramaQueryVersion(ClientPtr client) - rep.majorVersion = SIS_XINERAMA_MAJOR_VERSION; - rep.minorVersion = SIS_XINERAMA_MINOR_VERSION; - if(client->swapped) { -- swaps(&rep.sequenceNumber, n); -- swapl(&rep.length, n); -- swaps(&rep.majorVersion, n); -- swaps(&rep.minorVersion, n); -+ _swaps(&rep.sequenceNumber, n); -+ _swapl(&rep.length, n); -+ _swaps(&rep.majorVersion, n); -+ _swaps(&rep.minorVersion, n); - } - WriteToClient(client, sizeof(xPanoramiXQueryVersionReply), (char *)&rep); - return (client->noClientException); -@@ -2147,19 +2170,20 @@ SiSProcXineramaGetState(ClientPtr client) - WindowPtr pWin; - xPanoramiXGetStateReply rep; - register int n; -+ int rc; - - REQUEST_SIZE_MATCH(xPanoramiXGetStateReq); -- pWin = LookupWindow(stuff->window, client); -- if(!pWin) return BadWindow; -+ rc = dixLookupWindow(&pWin, stuff->window, client, DixGetAttrAccess); -+ if (rc != Success) -+ return rc; - - rep.type = X_Reply; - rep.length = 0; - rep.sequenceNumber = client->sequence; - rep.state = !SiSnoPanoramiXExtension; - if(client->swapped) { -- swaps (&rep.sequenceNumber, n); -- swapl (&rep.length, n); -- swaps (&rep.state, n); -+ _swaps (&rep.sequenceNumber, n); -+ _swapl (&rep.length, n); - } - WriteToClient(client, sizeof(xPanoramiXGetStateReply), (char *)&rep); - return client->noClientException; -@@ -2172,19 +2196,20 @@ SiSProcXineramaGetScreenCount(ClientPtr client) - WindowPtr pWin; - xPanoramiXGetScreenCountReply rep; - register int n; -+ int rc; - - REQUEST_SIZE_MATCH(xPanoramiXGetScreenCountReq); -- pWin = LookupWindow(stuff->window, client); -- if(!pWin) return BadWindow; -+ rc = dixLookupWindow(&pWin, stuff->window, client, DixGetAttrAccess); -+ if (rc != Success) -+ return rc; - - rep.type = X_Reply; - rep.length = 0; - rep.sequenceNumber = client->sequence; - rep.ScreenCount = SiSXineramaNumScreens; - if(client->swapped) { -- swaps(&rep.sequenceNumber, n); -- swapl(&rep.length, n); -- swaps(&rep.ScreenCount, n); -+ _swaps(&rep.sequenceNumber, n); -+ _swapl(&rep.length, n); - } - WriteToClient(client, sizeof(xPanoramiXGetScreenCountReply), (char *)&rep); - return client->noClientException; -@@ -2197,10 +2222,12 @@ SiSProcXineramaGetScreenSize(ClientPtr client) - WindowPtr pWin; - xPanoramiXGetScreenSizeReply rep; - register int n; -+ int rc; - - REQUEST_SIZE_MATCH(xPanoramiXGetScreenSizeReq); -- pWin = LookupWindow (stuff->window, client); -- if(!pWin) return BadWindow; -+ rc = dixLookupWindow(&pWin, stuff->window, client, DixGetAttrAccess); -+ if (rc != Success) -+ return rc; - - rep.type = X_Reply; - rep.length = 0; -@@ -2208,10 +2235,10 @@ SiSProcXineramaGetScreenSize(ClientPtr client) - rep.width = SiSXineramadataPtr[stuff->screen].width; - rep.height = SiSXineramadataPtr[stuff->screen].height; - if(client->swapped) { -- swaps(&rep.sequenceNumber, n); -- swapl(&rep.length, n); -- swaps(&rep.width, n); -- swaps(&rep.height, n); -+ _swaps(&rep.sequenceNumber, n); -+ _swapl(&rep.length, n); -+ _swapl(&rep.width, n); -+ _swapl(&rep.height, n); - } - WriteToClient(client, sizeof(xPanoramiXGetScreenSizeReply), (char *)&rep); - return client->noClientException; -@@ -2230,9 +2257,9 @@ SiSProcXineramaIsActive(ClientPtr client) - rep.state = !SiSnoPanoramiXExtension; - if(client->swapped) { - register int n; -- swaps(&rep.sequenceNumber, n); -- swapl(&rep.length, n); -- swapl(&rep.state, n); -+ _swaps(&rep.sequenceNumber, n); -+ _swapl(&rep.length, n); -+ _swapl(&rep.state, n); - } - WriteToClient(client, sizeof(xXineramaIsActiveReply), (char *) &rep); - return client->noClientException; -@@ -2251,9 +2278,9 @@ SiSProcXineramaQueryScreens(ClientPtr client) - rep.length = rep.number * sz_XineramaScreenInfo >> 2; - if(client->swapped) { - register int n; -- swaps(&rep.sequenceNumber, n); -- swapl(&rep.length, n); -- swapl(&rep.number, n); -+ _swaps(&rep.sequenceNumber, n); -+ _swapl(&rep.length, n); -+ _swapl(&rep.number, n); - } - WriteToClient(client, sizeof(xXineramaQueryScreensReply), (char *)&rep); - -@@ -2268,10 +2295,10 @@ SiSProcXineramaQueryScreens(ClientPtr client) - scratch.height = SiSXineramadataPtr[i].height; - if(client->swapped) { - register int n; -- swaps(&scratch.x_org, n); -- swaps(&scratch.y_org, n); -- swaps(&scratch.width, n); -- swaps(&scratch.height, n); -+ _swaps(&scratch.x_org, n); -+ _swaps(&scratch.y_org, n); -+ _swaps(&scratch.width, n); -+ _swaps(&scratch.height, n); - } - WriteToClient(client, sz_XineramaScreenInfo, (char *)&scratch); - } -@@ -2308,7 +2335,7 @@ SiSSProcXineramaQueryVersion (ClientPtr client) - { - REQUEST(xPanoramiXQueryVersionReq); - register int n; -- swaps(&stuff->length,n); -+ _swaps(&stuff->length,n); - REQUEST_SIZE_MATCH (xPanoramiXQueryVersionReq); - return SiSProcXineramaQueryVersion(client); - } -@@ -2318,7 +2345,7 @@ SiSSProcXineramaGetState(ClientPtr client) - { - REQUEST(xPanoramiXGetStateReq); - register int n; -- swaps (&stuff->length, n); -+ _swaps (&stuff->length, n); - REQUEST_SIZE_MATCH(xPanoramiXGetStateReq); - return SiSProcXineramaGetState(client); - } -@@ -2328,7 +2355,7 @@ SiSSProcXineramaGetScreenCount(ClientPtr client) - { - REQUEST(xPanoramiXGetScreenCountReq); - register int n; -- swaps (&stuff->length, n); -+ _swaps (&stuff->length, n); - REQUEST_SIZE_MATCH(xPanoramiXGetScreenCountReq); - return SiSProcXineramaGetScreenCount(client); - } -@@ -2338,7 +2365,7 @@ SiSSProcXineramaGetScreenSize(ClientPtr client) - { - REQUEST(xPanoramiXGetScreenSizeReq); - register int n; -- swaps (&stuff->length, n); -+ _swaps (&stuff->length, n); - REQUEST_SIZE_MATCH(xPanoramiXGetScreenSizeReq); - return SiSProcXineramaGetScreenSize(client); - } -@@ -2348,7 +2375,7 @@ SiSSProcXineramaIsActive(ClientPtr client) - { - REQUEST(xXineramaIsActiveReq); - register int n; -- swaps (&stuff->length, n); -+ _swaps (&stuff->length, n); - REQUEST_SIZE_MATCH(xXineramaIsActiveReq); - return SiSProcXineramaIsActive(client); - } -@@ -2358,7 +2385,7 @@ SiSSProcXineramaQueryScreens(ClientPtr client) - { - REQUEST(xXineramaQueryScreensReq); - register int n; -- swaps (&stuff->length, n); -+ _swaps (&stuff->length, n); - REQUEST_SIZE_MATCH(xXineramaQueryScreensReq); - return SiSProcXineramaQueryScreens(client); - } -@@ -2389,7 +2416,7 @@ SiSXineramaResetProc(ExtensionEntry* extEntry) - { - /* Called by CloseDownExtensions() */ - if(SiSXineramadataPtr) { -- Xfree(SiSXineramadataPtr); -+ free(SiSXineramadataPtr); - SiSXineramadataPtr = NULL; - } - } -@@ -2454,7 +2481,7 @@ SiSXineramaExtensionInit(ScrnInfoPtr pScrn) - if(!pSiS->XineramaExtEntry) break; - - if(!(SiSXineramadataPtr = (SiSXineramaData *) -- xcalloc(SiSXineramaNumScreens, sizeof(SiSXineramaData)))) break; -+ calloc(SiSXineramaNumScreens, sizeof(SiSXineramaData)))) break; - - SiSXineramaGeneration = serverGeneration; - success = TRUE; -@@ -2493,10 +2520,10 @@ SiSFreeCRT2Structs(SISPtr pSiS) - while(pSiS->CRT2pScrn->monitor->Modes) - xf86DeleteMode(&pSiS->CRT2pScrn->monitor->Modes, pSiS->CRT2pScrn->monitor->Modes); - } -- if(pSiS->CRT2pScrn->monitor->DDC) xfree(pSiS->CRT2pScrn->monitor->DDC); -- xfree(pSiS->CRT2pScrn->monitor); -+ if(pSiS->CRT2pScrn->monitor->DDC) free(pSiS->CRT2pScrn->monitor->DDC); -+ free(pSiS->CRT2pScrn->monitor); - } -- xfree(pSiS->CRT2pScrn); -+ free(pSiS->CRT2pScrn); - pSiS->CRT2pScrn = NULL; - } - } -@@ -2902,22 +2929,22 @@ SiS_CheckKernelFB(ScrnInfoPtr pScrn) - Bool gotit = FALSE; - - if(!ioctl(fd, SISFB_GET_INFO_SIZE, &sisfbinfosize)) { -- if((mysisfbinfo = xalloc(sisfbinfosize))) { -+ if((mysisfbinfo = malloc(sisfbinfosize))) { - if(!ioctl(fd, (SISFB_GET_INFO | (sisfbinfosize << 16)), mysisfbinfo)) { - gotit = TRUE; - } else { -- xfree(mysisfbinfo); -+ free(mysisfbinfo); - mysisfbinfo = NULL; - } - } - } else { -- if((mysisfbinfo = xalloc(sizeof(*mysisfbinfo) + 16))) { -+ if((mysisfbinfo = malloc(sizeof(*mysisfbinfo) + 16))) { - if(!ioctl(fd, SISFB_GET_INFO_OLD, mysisfbinfo)) { - gotit = TRUE; - xf86DrvMsg(pScrn->scrnIndex, X_WARNING, - "Possibly old version of sisfb detected. Please update.\n"); - } else { -- xfree(mysisfbinfo); -+ free(mysisfbinfo); - mysisfbinfo = NULL; - } - } -@@ -3056,7 +3083,7 @@ SiS_CheckKernelFB(ScrnInfoPtr pScrn) - } - } - } -- xfree(mysisfbinfo); -+ free(mysisfbinfo); - mysisfbinfo = NULL; - } - close (fd); -@@ -3216,7 +3243,7 @@ SISPreInit(ScrnInfoPtr pScrn, int flags) - pSiS->pInt = NULL; - - /* Save PCI Domain Base */ --#if XF86_VERSION_CURRENT < XF86_VERSION_NUMERIC(4,2,99,0,0) -+#if XF86_VERSION_CURRENT < XF86_VERSION_NUMERIC(4,2,99,0,0) || GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) >= 12 - pSiS->IODBase = 0; - #else - pSiS->IODBase = pScrn->domainIOBase; -@@ -4078,7 +4105,7 @@ SISPreInit(ScrnInfoPtr pScrn, int flags) - } - #endif - if(!pSiS->BIOS) { -- if(!(pSiS->BIOS = xcalloc(1, BIOS_SIZE))) { -+ if(!(pSiS->BIOS = calloc(1, BIOS_SIZE))) { - xf86DrvMsg(pScrn->scrnIndex, X_WARNING, - "Could not allocate memory for video BIOS image\n"); - } else { -@@ -4173,7 +4200,7 @@ SISPreInit(ScrnInfoPtr pScrn, int flags) - } else { - xf86DrvMsg(pScrn->scrnIndex, X_WARNING, - "Could not find/read video BIOS\n"); -- xfree(pSiS->BIOS); -+ free(pSiS->BIOS); - pSiS->BIOS = NULL; - } - } -@@ -5559,7 +5586,7 @@ SISPreInit(ScrnInfoPtr pScrn, int flags) - /* Do some MergedFB mode initialisation */ - #ifdef SISMERGED - if(pSiS->MergedFB) { -- pSiS->CRT2pScrn = xalloc(sizeof(ScrnInfoRec)); -+ pSiS->CRT2pScrn = malloc(sizeof(ScrnInfoRec)); - if(!pSiS->CRT2pScrn) { - SISErrorLog(pScrn, "Failed to allocate memory for 2nd pScrn, %s\n", mergeddisstr); - pSiS->MergedFB = FALSE; -@@ -5592,7 +5619,7 @@ SISPreInit(ScrnInfoPtr pScrn, int flags) - } else { - SISErrorLog(pScrn, mergednocrt1, mergeddisstr); - } -- if(pSiS->CRT2pScrn) xfree(pSiS->CRT2pScrn); -+ if(pSiS->CRT2pScrn) free(pSiS->CRT2pScrn); - pSiS->CRT2pScrn = NULL; - pSiS->MergedFB = FALSE; - } -@@ -5639,7 +5666,7 @@ SISPreInit(ScrnInfoPtr pScrn, int flags) - } else { - SISErrorLog(pScrn, mergednocrt2, mergeddisstr); - } -- if(pSiS->CRT2pScrn) xfree(pSiS->CRT2pScrn); -+ if(pSiS->CRT2pScrn) free(pSiS->CRT2pScrn); - pSiS->CRT2pScrn = NULL; - pSiS->MergedFB = FALSE; - } -@@ -6016,7 +6043,7 @@ SISPreInit(ScrnInfoPtr pScrn, int flags) - - #ifdef SISMERGED - if(pSiS->MergedFB) { -- pSiS->CRT2pScrn->monitor = xalloc(sizeof(MonRec)); -+ pSiS->CRT2pScrn->monitor = malloc(sizeof(MonRec)); - if(pSiS->CRT2pScrn->monitor) { - DisplayModePtr tempm = NULL, currentm = NULL, newm = NULL; - memcpy(pSiS->CRT2pScrn->monitor, pScrn->monitor, sizeof(MonRec)); -@@ -6025,10 +6052,10 @@ SISPreInit(ScrnInfoPtr pScrn, int flags) - pSiS->CRT2pScrn->monitor->id = (char *)crt2monname; - tempm = pScrn->monitor->Modes; - while(tempm) { -- if(!(newm = xalloc(sizeof(DisplayModeRec)))) break; -+ if(!(newm = malloc(sizeof(DisplayModeRec)))) break; - memcpy(newm, tempm, sizeof(DisplayModeRec)); -- if(!(newm->name = xalloc(strlen(tempm->name) + 1))) { -- xfree(newm); -+ if(!(newm->name = malloc(strlen(tempm->name) + 1))) { -+ free(newm); - break; - } - strcpy(newm->name, tempm->name); -@@ -6070,7 +6097,7 @@ SISPreInit(ScrnInfoPtr pScrn, int flags) - } else { - SISErrorLog(pScrn, "Failed to allocate memory for CRT2 monitor, %s.\n", - mergeddisstr); -- if(pSiS->CRT2pScrn) xfree(pSiS->CRT2pScrn); -+ if(pSiS->CRT2pScrn) free(pSiS->CRT2pScrn); - pSiS->CRT2pScrn = NULL; - pSiS->MergedFB = FALSE; - } -@@ -6835,8 +6862,10 @@ SISPreInit(ScrnInfoPtr pScrn, int flags) - #ifdef SIS_USE_XAA - if(!pSiS->useEXA) { - if (!xf86LoadSubModule(pScrn, "xaa")) { -- SISErrorLog(pScrn, "Could not load xaa module\n"); -- goto my_error_1; -+ xf86DrvMsg(pScrn->scrnIndex, X_INFO, -+ "Falling back to shadowfb\n"); -+ pSiS->NoAccel = 1; -+ pSiS->ShadowFB = 1; - } - } - #endif -@@ -6855,7 +6884,6 @@ SISPreInit(ScrnInfoPtr pScrn, int flags) - } - } - #endif -- xf86DrvMsg(pScrn->scrnIndex, X_INFO, "2D acceleration enabled\n"); - } - - /* Load shadowfb (if needed) */ -@@ -6867,7 +6895,7 @@ SISPreInit(ScrnInfoPtr pScrn, int flags) - } - - /* Load the dri and glx modules if requested. */ --#ifdef XF86DRI -+#ifdef SISDRI - if(pSiS->loadDRI) { - if(!xf86LoaderCheckSymbol("DRIScreenInit")) { - if(xf86LoadSubModule(pScrn, "dri")) { -@@ -7454,7 +7482,7 @@ SISVESASaveRestore(ScrnInfoPtr pScrn, vbeSaveRestoreFunction function) - (function == MODE_SAVE)) { - /* don't rely on the memory not being touched */ - if(!pSiS->pstate) { -- pSiS->pstate = xalloc(pSiS->stateSize); -+ pSiS->pstate = malloc(pSiS->stateSize); - } - memcpy(pSiS->pstate, pSiS->state, pSiS->stateSize); - } -@@ -8675,7 +8703,7 @@ SISScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) - - if(pSiS->ShadowFB) { - pSiS->ShadowPitch = BitmapBytePad(pScrn->bitsPerPixel * width); -- pSiS->ShadowPtr = xalloc(pSiS->ShadowPitch * height); -+ pSiS->ShadowPtr = malloc(pSiS->ShadowPitch * height); - displayWidth = pSiS->ShadowPitch / (pScrn->bitsPerPixel >> 3); - FBStart = pSiS->ShadowPtr; - } else { -@@ -8703,7 +8731,7 @@ SISScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) - - pSiS->cmdQueueLen = 0; /* Force an EngineIdle() at start */ - --#ifdef XF86DRI -+#ifdef SISDRI - if(pSiS->loadDRI) { - #ifdef SISDUALHEAD - /* No DRI in dual head mode */ -@@ -8849,14 +8877,14 @@ SISScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) - - pSiS->CRT2ColNum = 1 << pScrn->rgbBits; - -- if((pSiS->crt2gcolortable = xalloc(pSiS->CRT2ColNum * 2 * sizeof(LOCO)))) { -+ if((pSiS->crt2gcolortable = malloc(pSiS->CRT2ColNum * 2 * sizeof(LOCO)))) { - pSiS->crt2colors = &pSiS->crt2gcolortable[pSiS->CRT2ColNum]; -- if((pSiS->crt2cindices = xalloc(256 * sizeof(int)))) { -+ if((pSiS->crt2cindices = malloc(256 * sizeof(int)))) { - int i = pSiS->CRT2ColNum; - SISCalculateGammaRampCRT2(pScrn); - while(i--) pSiS->crt2cindices[i] = i; - } else { -- xfree(pSiS->crt2gcolortable); -+ free(pSiS->crt2gcolortable); - pSiS->crt2gcolortable = NULL; - pSiS->CRT2SepGamma = FALSE; - } -@@ -9016,7 +9044,7 @@ SISScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) - } - #endif - --#ifdef XF86DRI -+#ifdef SISDRI - if(pSiS->loadDRI) { - if(pSiS->directRenderingEnabled) { - /* Now that mi, drm and others have done their thing, -@@ -9322,9 +9350,22 @@ SISMergedPointerMoved(int scrnIndex, int x, int y) - } - } - if(doit) { -- UpdateCurrentTime(); - sigstate = xf86BlockSIGIO(); -+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 15 -+ { -+ double dx = x, dy = y; -+ miPointerSetPosition(inputInfo.pointer, Absolute, &dx, &dy); -+ x = (int)dx; -+ y = (int)dy; -+ } -+#elif GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 13 -+ miPointerSetPosition(inputInfo.pointer, Absolute, x, y); -+#elif GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 5 -+ miPointerSetPosition(inputInfo.pointer, x, y); -+#else -+ UpdateCurrentTime(); - miPointerAbsoluteCursor(x, y, currentTime.milliseconds); -+#endif - xf86UnblockSIGIO(sigstate); - return; - } -@@ -9737,7 +9778,7 @@ SISEnterVT(int scrnIndex, int flags) - - SISAdjustFrame(scrnIndex, pScrn->frameX0, pScrn->frameY0, 0); - --#ifdef XF86DRI -+#ifdef SISDRI - if(pSiS->directRenderingEnabled) { - DRIUnlock(screenInfo.screens[scrnIndex]); - } -@@ -9763,7 +9804,7 @@ SISLeaveVT(int scrnIndex, int flags) - { - ScrnInfoPtr pScrn = xf86Screens[scrnIndex]; - SISPtr pSiS = SISPTR(pScrn); --#ifdef XF86DRI -+#ifdef SISDRI - ScreenPtr pScreen; - - if(pSiS->directRenderingEnabled) { -@@ -9847,7 +9888,7 @@ SISCloseScreen(int scrnIndex, ScreenPtr pScreen) - SiSCtrlExtUnregister(pSiS, pScrn->scrnIndex); - } - --#ifdef XF86DRI -+#ifdef SISDRI - if(pSiS->directRenderingEnabled) { - SISDRICloseScreen(pScreen); - pSiS->directRenderingEnabled = FALSE; -@@ -9941,7 +9982,7 @@ SISCloseScreen(int scrnIndex, ScreenPtr pScreen) - if(pSiS->useEXA) { - if(pSiS->EXADriverPtr) { - exaDriverFini(pScreen); -- xfree(pSiS->EXADriverPtr); -+ free(pSiS->EXADriverPtr); - pSiS->EXADriverPtr = NULL; - pSiS->exa_scratch = NULL; - } -@@ -9954,33 +9995,33 @@ SISCloseScreen(int scrnIndex, ScreenPtr pScreen) - } - - if(pSiS->ShadowPtr) { -- xfree(pSiS->ShadowPtr); -+ free(pSiS->ShadowPtr); - pSiS->ShadowPtr = NULL; - } - - if(pSiS->DGAModes) { -- xfree(pSiS->DGAModes); -+ free(pSiS->DGAModes); - pSiS->DGAModes = NULL; - } - - if(pSiS->adaptor) { -- xfree(pSiS->adaptor); -+ free(pSiS->adaptor); - pSiS->adaptor = NULL; - pSiS->ResetXv = pSiS->ResetXvGamma = pSiS->ResetXvDisplay = NULL; - } - - if(pSiS->blitadaptor) { -- xfree(pSiS->blitadaptor); -+ free(pSiS->blitadaptor); - pSiS->blitadaptor = NULL; - } - - if(pSiS->crt2gcolortable) { -- xfree(pSiS->crt2gcolortable); -+ free(pSiS->crt2gcolortable); - pSiS->crt2gcolortable = NULL; - } - - if(pSiS->crt2cindices) { -- xfree(pSiS->crt2cindices); -+ free(pSiS->crt2cindices); - pSiS->crt2cindices = NULL; - } - -diff --git a/src/sis_memcpy.c b/src/sis_memcpy.c -index 6ad62e8..3634401 100644 ---- a/src/sis_memcpy.c -+++ b/src/sis_memcpy.c -@@ -638,13 +638,13 @@ SiS_AllocBuffers(ScrnInfoPtr pScrn, UChar **buf1, UChar **buf2, UChar **buf3) - (*buf1) = (UChar *)pSiS->FbBase + offset; - (*buf1) = (UChar *)(((ULong)(*buf1) + 31) & ~31); - -- if(!((*buf2) = (UChar *)xalloc(BUFFERSIZE + 15))) { -+ if(!((*buf2) = (UChar *)malloc(BUFFERSIZE + 15))) { - SISFreeFBMemory(pScrn, &handle); - return NULL; - } - -- if(!((*buf3) = (UChar *)xalloc(BUFFERSIZE + 15))) { -- xfree((*buf2)); -+ if(!((*buf3) = (UChar *)malloc(BUFFERSIZE + 15))) { -+ free((*buf2)); - SISFreeFBMemory(pScrn, &handle); - return NULL; - } -@@ -1098,8 +1098,8 @@ SiSVidCopyInitGen(ScreenPtr pScreen, SISMCFuncData *MCFunctions, vidCopyFunc *UM - - /* Free buffers */ - SISFreeFBMemory(pScrn, &fbhandle); -- xfree(buf2); -- xfree(buf3); -+ free(buf2); -+ free(buf3); - - xf86DrvMsg(pScrn->scrnIndex, X_PROBED, - "Using %s method for aligned data transfers %s video RAM\n", -diff --git a/src/sis_opt.c b/src/sis_opt.c -index 3517549..3fa12c9 100644 ---- a/src/sis_opt.c -+++ b/src/sis_opt.c -@@ -448,7 +448,7 @@ SiSOptions(ScrnInfoPtr pScrn) - xf86CollectOptions(pScrn, NULL); - - /* Process the options */ -- if(!(pSiS->Options = xalloc(sizeof(SISOptions)))) return; -+ if(!(pSiS->Options = malloc(sizeof(SISOptions)))) return; - - memcpy(pSiS->Options, SISOptions, sizeof(SISOptions)); - -@@ -480,7 +480,7 @@ SiSOptions(ScrnInfoPtr pScrn) - #endif - pSiS->ShadowFB = FALSE; - pSiS->loadDRI = FALSE; --#ifdef XF86DRI -+#ifdef SISDRI - pSiS->agpWantedPages = AGP_PAGES; - #endif - pSiS->VESA = -1; -@@ -888,7 +888,7 @@ SiSOptions(ScrnInfoPtr pScrn) - if((strptr = (char *)xf86GetOptValString(pSiS->Options, OPTION_CRT2POS))) { - int result; - Bool valid = FALSE; -- char *tempstr = xalloc(strlen(strptr) + 1); -+ char *tempstr = malloc(strlen(strptr) + 1); - result = sscanf(strptr, "%s %d", tempstr, &ival); - if(result >= 1) { - if(!xf86NameCmp(tempstr,"LeftOf")) { -@@ -946,18 +946,18 @@ SiSOptions(ScrnInfoPtr pScrn) - xf86DrvMsg(pScrn->scrnIndex, X_INFO, - "Except for \"Clone\", the parameter may be followed by an integer.\n"); - } -- xfree(tempstr); -+ free(tempstr); - } - if((strptr = (char *)xf86GetOptValString(pSiS->Options, OPTION_METAMODES))) { -- pSiS->MetaModes = xalloc(strlen(strptr) + 1); -+ pSiS->MetaModes = malloc(strlen(strptr) + 1); - if(pSiS->MetaModes) memcpy(pSiS->MetaModes, strptr, strlen(strptr) + 1); - } - if((strptr = (char *)xf86GetOptValString(pSiS->Options, OPTION_CRT2HSYNC))) { -- pSiS->CRT2HSync = xalloc(strlen(strptr) + 1); -+ pSiS->CRT2HSync = malloc(strlen(strptr) + 1); - if(pSiS->CRT2HSync) memcpy(pSiS->CRT2HSync, strptr, strlen(strptr) + 1); - } - if((strptr = (char *)xf86GetOptValString(pSiS->Options, OPTION_CRT2VREFRESH))) { -- pSiS->CRT2VRefresh = xalloc(strlen(strptr) + 1); -+ pSiS->CRT2VRefresh = malloc(strlen(strptr) + 1); - if(pSiS->CRT2VRefresh) memcpy(pSiS->CRT2VRefresh, strptr, strlen(strptr) + 1); - } - if((strptr = (char *)xf86GetOptValString(pSiS->Options, OPTION_MERGEDDPI))) { -@@ -2034,7 +2034,7 @@ SiSOptions(ScrnInfoPtr pScrn) - } - } - --#ifdef XF86DRI -+#ifdef SISDRI - /* DRI */ - from = X_DEFAULT; - if(xf86GetOptValBool(pSiS->Options, OPTION_DRI, &pSiS->loadDRI)) { -diff --git a/src/sis_utility.c b/src/sis_utility.c -index a9bcd2b..eda194f 100644 ---- a/src/sis_utility.c -+++ b/src/sis_utility.c -@@ -34,8 +34,6 @@ - #endif - - #include "sis.h" --#define NEED_REPLIES --#define NEED_EVENTS - #include <X11/X.h> - #include "dixstruct.h" - -@@ -1882,10 +1880,10 @@ SiSProcSiSCtrlQueryVersion(ClientPtr client) - rep.majorVersion = SISCTRL_MAJOR_VERSION; - rep.minorVersion = SISCTRL_MINOR_VERSION; - if(client->swapped) { -- swaps(&rep.sequenceNumber, n); -- swapl(&rep.length, n); -- swaps(&rep.majorVersion, n); -- swaps(&rep.minorVersion, n); -+ _swaps(&rep.sequenceNumber, n); -+ _swapl(&rep.length, n); -+ _swaps(&rep.majorVersion, n); -+ _swaps(&rep.minorVersion, n); - } - WriteToClient(client, sizeof(xSiSCtrlQueryVersionReply), (char *)&rep); - return (client->noClientException); -@@ -1926,15 +1924,15 @@ SiSProcSiSCtrlCommand(ClientPtr client) - rep.sequenceNumber = client->sequence; - - if(client->swapped) { -- swaps(&rep.sequenceNumber, n); -- swapl(&rep.length, n); -- swapl(&rep.screen, n); -- swapl(&rep.sdc_id, n); -- swapl(&rep.sdc_command, n); -- swapl(&rep.sdc_result_header, n); -+ _swaps(&rep.sequenceNumber, n); -+ _swapl(&rep.length, n); -+ _swapl(&rep.screen, n); -+ _swapl(&rep.sdc_id, n); -+ _swapl(&rep.sdc_command, n); -+ _swapl(&rep.sdc_result_header, n); - for(i = 0; i < SDC_NUM_PARM_RESULT; i++) { -- swapl(&rep.sdc_parm[i], n); -- swapl(&rep.sdc_result[i], n); -+ _swapl(&rep.sdc_parm[i], n); -+ _swapl(&rep.sdc_result[i], n); - } - } - WriteToClient(client, sizeof(xSiSCtrlCommandReply), (char *)&rep); -@@ -1961,7 +1959,7 @@ SiSSProcSiSCtrlQueryVersion(ClientPtr client) - { - REQUEST(xSiSCtrlQueryVersionReq); - register int n; -- swaps(&stuff->length, n); -+ _swaps(&stuff->length, n); - REQUEST_SIZE_MATCH(xSiSCtrlQueryVersionReq); - return SiSProcSiSCtrlQueryVersion(client); - } -@@ -1972,14 +1970,14 @@ SiSSProcSiSCtrlCommand(ClientPtr client) - REQUEST(xSiSCtrlCommandReq); - register int n; - int i; -- swaps(&stuff->length, n); -- swapl(&stuff->screen, n); -- swapl(&stuff->sdc_id, n); -- swapl(&stuff->sdc_command, n); -- swapl(&stuff->sdc_result_header, n); -+ _swaps(&stuff->length, n); -+ _swapl(&stuff->screen, n); -+ _swapl(&stuff->sdc_id, n); -+ _swapl(&stuff->sdc_command, n); -+ _swapl(&stuff->sdc_result_header, n); - for(i = 0; i < SDC_NUM_PARM_RESULT; i++) { -- swapl(&stuff->sdc_parm[i], n); -- swapl(&stuff->sdc_result[i], n); -+ _swapl(&stuff->sdc_parm[i], n); -+ _swapl(&stuff->sdc_result[i], n); - } - REQUEST_SIZE_MATCH(xSiSCtrlCommandReq); - return SiSProcSiSCtrlCommand(client); -@@ -2007,7 +2005,7 @@ SiSCtrlResetProc(ExtensionEntry* extEntry) - * in SiSCtrlExtUnregister()) - */ - if(extEntry->extPrivate) { -- xfree(extEntry->extPrivate); -+ free(extEntry->extPrivate); - extEntry->extPrivate = NULL; - } - } -@@ -2028,7 +2026,7 @@ SiSCtrlExtInit(ScrnInfoPtr pScrn) - - if(!(myext = CheckExtension(SISCTRL_PROTOCOL_NAME))) { - -- if(!(myctrl = xcalloc(sizeof(xSiSCtrlScreenTable), 1))) -+ if(!(myctrl = calloc(sizeof(xSiSCtrlScreenTable), 1))) - return; - - if(!(myext = AddExtension(SISCTRL_PROTOCOL_NAME, 0, 0, -@@ -2038,7 +2036,7 @@ SiSCtrlExtInit(ScrnInfoPtr pScrn) - StandardMinorOpcode))) { - xf86DrvMsg(pScrn->scrnIndex, X_ERROR, - "Failed to add SISCTRL extension\n"); -- xfree(myctrl); -+ free(myctrl); - return; - } - -diff --git a/src/sis_vga.c b/src/sis_vga.c -index 3f6219b..4c887b8 100644 ---- a/src/sis_vga.c -+++ b/src/sis_vga.c -@@ -1429,7 +1429,7 @@ SiSVGASaveFonts(ScrnInfoPtr pScrn) - attr10 = SiS_ReadAttr(pSiS, 0x10); - if(attr10 & 0x01) return; - -- if(!(pSiS->fonts = xalloc(SIS_FONTS_SIZE * 2))) { -+ if(!(pSiS->fonts = malloc(SIS_FONTS_SIZE * 2))) { - xf86DrvMsg(pScrn->scrnIndex, X_ERROR, - "Could not save console fonts, mem allocation failed\n"); - return; -@@ -1716,8 +1716,8 @@ SiSVGAMapMem(ScrnInfoPtr pScrn) - - #if XF86_VERSION_CURRENT >= XF86_VERSION_NUMERIC(4,3,0,0,0) - #if XSERVER_LIBPCIACCESS -- pSiS->VGAMemBase = xf86MapDomainMemory(pScrn->scrnIndex, VIDMEM_MMIO_32BIT, -- pSiS->PciInfo, pSiS->VGAMapPhys, pSiS->VGAMapSize); -+ (void) pci_device_map_legacy(pSiS->PciInfo, pSiS->VGAMapPhys, pSiS->VGAMapSize, -+ PCI_DEV_MAP_FLAG_WRITABLE, &pSiS->VGAMemBase); - #else - pSiS->VGAMemBase = xf86MapDomainMemory(pScrn->scrnIndex, VIDMEM_MMIO_32BIT, - pSiS->PciTag, pSiS->VGAMapPhys, pSiS->VGAMapSize); -@@ -1737,7 +1737,12 @@ SiSVGAUnmapMem(ScrnInfoPtr pScrn) - - if(pSiS->VGAMemBase == NULL) return; - -+#if XSERVER_LIBPCIACCESS -+ (void) pci_device_unmap_legacy(pSiS->PciInfo, pSiS->VGAMemBase, pSiS->VGAMapSize); -+#else - xf86UnMapVidMem(pScrn->scrnIndex, pSiS->VGAMemBase, pSiS->VGAMapSize); -+#endif -+ - pSiS->VGAMemBase = NULL; - } - #endif -diff --git a/src/sis_video.c b/src/sis_video.c -index 7322efb..2006858 100644 ---- a/src/sis_video.c -+++ b/src/sis_video.c -@@ -326,7 +326,7 @@ SISInitVideo(ScreenPtr pScreen) - if(newAdaptor) size++; - if(newBlitAdaptor) size++; - -- newAdaptors = xalloc(size * sizeof(XF86VideoAdaptorPtr*)); -+ newAdaptors = malloc(size * sizeof(XF86VideoAdaptorPtr*)); - if(newAdaptors) { - if(num_adaptors) { - memcpy(newAdaptors, adaptors, num_adaptors * sizeof(XF86VideoAdaptorPtr)); -@@ -356,7 +356,7 @@ SISInitVideo(ScreenPtr pScreen) - } - - if(newAdaptors) { -- xfree(newAdaptors); -+ free(newAdaptors); - } - } - -@@ -877,7 +877,7 @@ SISSetupImageVideo(ScreenPtr pScreen) - } - #endif - -- if(!(adapt = xcalloc(1, sizeof(XF86VideoAdaptorRec) + -+ if(!(adapt = calloc(1, sizeof(XF86VideoAdaptorRec) + - sizeof(SISPortPrivRec) + - sizeof(DevUnion)))) { - return NULL; -@@ -4067,7 +4067,7 @@ SISSetupBlitVideo(ScreenPtr pScreen) - } - #endif - -- if(!(adapt = xcalloc(1, sizeof(XF86VideoAdaptorRec) + -+ if(!(adapt = calloc(1, sizeof(XF86VideoAdaptorRec) + - (sizeof(DevUnion) * NUM_BLIT_PORTS) + - sizeof(SISBPortPrivRec)))) { - return NULL; -diff --git a/src/sispcirename.h b/src/sispcirename.h -index c4beac6..a354ac4 100644 ---- a/src/sispcirename.h -+++ b/src/sispcirename.h -@@ -29,11 +29,40 @@ - #ifndef SISPCIRENAME_H - #define SISPCIRENAME_H - -+#include <stdint.h> -+ - enum region_type { - REGION_MEM, - REGION_IO - }; - -+#include "xf86Module.h" -+ -+#if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) >= 12 -+ -+#if (defined(__alpha__) || defined(__ia64__)) && defined (linux) -+#define PCI_DOM_MASK 0x01fful -+#else -+#define PCI_DOM_MASK 0x0ffu -+#endif -+ -+#ifndef PCI_DOM_MASK -+# define PCI_DOM_MASK 0x0ffu -+#endif -+#define PCI_DOMBUS_MASK (((PCI_DOM_MASK) << 8) | 0x0ffu) -+ -+static inline uint32_t -+pciTag(int busnum, int devnum, int funcnum) -+{ -+ uint32_t tag; -+ tag = (busnum & (PCI_DOMBUS_MASK)) << 16; -+ tag |= (devnum & 0x00001fu) << 11; -+ tag |= (funcnum & 0x000007u) << 8; -+ -+ return tag; -+} -+#endif /* GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) >= 12 */ -+ - #ifndef XSERVER_LIBPCIACCESS - - /* pciVideoPtr */ -diff --git a/src/vgatypes.h b/src/vgatypes.h -index 4be31e4..d6e7b6e 100644 ---- a/src/vgatypes.h -+++ b/src/vgatypes.h -@@ -69,8 +69,9 @@ typedef unsigned int BOOLEAN; - - #define SISIOMEMTYPE - --#ifdef SIS_LINUX_KERNEL - typedef unsigned long SISIOADDRESS; -+ -+#ifdef SIS_LINUX_KERNEL - #if LINUX_VERSION_CODE > KERNEL_VERSION(2,6,8) - #include <linux/types.h> /* Need __iomem */ - #undef SISIOMEMTYPE -@@ -78,15 +79,6 @@ typedef unsigned long SISIOADDRESS; - #endif - #endif - --#ifdef SIS_XORG_XF86 --#if XF86_VERSION_CURRENT < XF86_VERSION_NUMERIC(4,2,0,0,0) --typedef unsigned long IOADDRESS; --typedef unsigned long SISIOADDRESS; --#else --typedef IOADDRESS SISIOADDRESS; --#endif --#endif -- - typedef enum _SIS_CHIP_TYPE { - SIS_VGALegacy = 0, - SIS_530, |