[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

xserver-xorg-video-sisusb: Changes to 'upstream-experimental'



 configure.ac         |   44 +++++++---------
 man/Makefile.am      |   34 ------------
 man/sisusb.man       |   20 -------
 src/Makefile.am      |    3 -
 src/compat-api.h     |   99 +++++++++++++++++++++++++++++++++++++
 src/sisusb.h         |   17 +++++-
 src/sisusb_accel.c   |    2 
 src/sisusb_cursor.c  |    6 +-
 src/sisusb_dac.c     |   16 +++---
 src/sisusb_driver.c  |  136 +++++++++++++++++++++++++--------------------------
 src/sisusb_driver.h  |   16 +++---
 src/sisusb_init.c    |    6 +-
 src/sisusb_opt.c     |    2 
 src/sisusb_osdef.h   |   12 ++--
 src/sisusb_types.h   |    4 +
 src/sisusb_utility.c |   48 ++++++++----------
 src/sisusb_vga.c     |    2 
 src/sisusb_video.c   |   12 ++--
 18 files changed, 270 insertions(+), 209 deletions(-)

New commits:
commit 894814fe2e54517c3b9a728238542a409bcb783a
Author: Dave Airlie <airlied@redhat.com>
Date:   Tue Jul 17 16:05:09 2012 +1000

    xf86-video-sisusb: bump to version 0.9.6
    
    Signed-off-by: Dave Airlie <airlied@redhat.com>

diff --git a/configure.ac b/configure.ac
index de75eda..a686034 100644
--- a/configure.ac
+++ b/configure.ac
@@ -23,7 +23,7 @@
 # Initialize Autoconf
 AC_PREREQ([2.60])
 AC_INIT([xf86-video-sisusb],
-        [0.9.5],
+        [0.9.6],
         [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
         [xf86-video-sisusb])
 AC_CONFIG_SRCDIR([Makefile.am])

commit 1a278211f732a035cf08b4d2d614cb3b8919f89d
Author: Dave Airlie <airlied@gmail.com>
Date:   Sun Jul 15 20:01:57 2012 +1000

    sisub: don't require xaa
    
    it doesn't use xaa at all.
    
    Signed-off-by: Dave Airlie <airlied@redhat.com>

diff --git a/src/sisusb.h b/src/sisusb.h
index 77f804b..cdd13da 100644
--- a/src/sisusb.h
+++ b/src/sisusb.h
@@ -86,7 +86,7 @@
 #include "xf86.h"
 #include "xf86Cursor.h"
 #include "xf86cmap.h"
-#include "xaa.h"
+#include "xf86fbman.h"
 
 #define SISUSB_HaveDriverFuncs 0
 

commit a5904352bd7f378cebfe1d4d20966143f656bae3
Author: Dave Airlie <airlied@gmail.com>
Date:   Sun Jul 15 20:01:30 2012 +1000

    sisusb: fix build since compat-api
    
    Signed-off-by: Dave Airlie <airlied@redhat.com>

diff --git a/src/sisusb.h b/src/sisusb.h
index f66b701..77f804b 100644
--- a/src/sisusb.h
+++ b/src/sisusb.h
@@ -113,6 +113,8 @@
 #include <X11/extensions/Xv.h>
 #endif
 
+#include "fb.h"
+
 #include "compat-api.h"
 
 #if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 12
diff --git a/src/sisusb_driver.c b/src/sisusb_driver.c
index 208cdbe..539b9f1 100644
--- a/src/sisusb_driver.c
+++ b/src/sisusb_driver.c
@@ -37,7 +37,6 @@
 
 #include "dixstruct.h"
 #include "shadowfb.h"
-#include "fb.h"
 #include "micmap.h"
 #include "mipointer.h"
 #include "mibstore.h"

commit 414c3ae620f48d31d264b7de0141d5cd4b5a1893
Author: Dave Airlie <airlied@redhat.com>
Date:   Mon Jul 2 13:23:21 2012 +0100

    sisusb: bump to 0.9.5 release
    
    Signed-off-by: Dave Airlie <airlied@redhat.com>

diff --git a/configure.ac b/configure.ac
index 725d6cb..de75eda 100644
--- a/configure.ac
+++ b/configure.ac
@@ -23,7 +23,7 @@
 # Initialize Autoconf
 AC_PREREQ([2.60])
 AC_INIT([xf86-video-sisusb],
-        [0.9.4],
+        [0.9.5],
         [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
         [xf86-video-sisusb])
 AC_CONFIG_SRCDIR([Makefile.am])

commit de082dae48030b8a5c1cc2474fe3008170d62eea
Author: Dave Airlie <airlied@redhat.com>
Date:   Wed Jun 6 12:28:19 2012 +0100

    sisusb: add support for compat API.
    
    Signed-off-by: Dave Airlie <airlied@redhat.com>

diff --git a/src/Makefile.am b/src/Makefile.am
index 5e1735f..1f7e4a1 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -51,4 +51,5 @@ sisusb_drv_la_SOURCES = \
          sisusb_vga.c \
          sisusb_video.c \
          sisusb_video.h \
-         sisusb_videostr.h
+         sisusb_videostr.h \
+         compat-api.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/sisusb.h b/src/sisusb.h
index 82ed509..f66b701 100644
--- a/src/sisusb.h
+++ b/src/sisusb.h
@@ -113,6 +113,8 @@
 #include <X11/extensions/Xv.h>
 #endif
 
+#include "compat-api.h"
+
 #if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 12
 #define _swapl(x, n) swapl(x,n)
 #define _swaps(x, n) swaps(x,n)
diff --git a/src/sisusb_accel.c b/src/sisusb_accel.c
index d9c0665..c973a4c 100644
--- a/src/sisusb_accel.c
+++ b/src/sisusb_accel.c
@@ -60,7 +60,7 @@ SiSUSBInitializeAccelerator(ScrnInfoPtr pScrn)
 Bool
 SiSUSBAccelInit(ScreenPtr pScreen)
 {
-	ScrnInfoPtr	pScrn = xf86Screens[pScreen->myNum];
+	ScrnInfoPtr	pScrn = xf86ScreenToScrn(pScreen);
 	SISUSBPtr	pSiSUSB = SISUSBPTR(pScrn);
 	int		topFB, reservedFbSize, usableFbSize;
 	BoxRec		Avail;
diff --git a/src/sisusb_cursor.c b/src/sisusb_cursor.c
index b5b3629..9782f9e 100644
--- a/src/sisusb_cursor.c
+++ b/src/sisusb_cursor.c
@@ -156,7 +156,7 @@ SiSUSBLoadCursorImage(ScrnInfoPtr pScrn, UChar *src)
 static Bool
 SiSUSBUseHWCursor(ScreenPtr pScreen, CursorPtr pCurs)
 {
-    ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
+    ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen);
     SISUSBPtr pSiSUSB = SISUSBPTR(pScrn);
     DisplayModePtr mode = pSiSUSB->CurrentLayout.mode;
 
@@ -172,7 +172,7 @@ SiSUSBUseHWCursor(ScreenPtr pScreen, CursorPtr pCurs)
 static Bool
 SiSUSBUseHWCursorARGB(ScreenPtr pScreen, CursorPtr pCurs)
 {
-    ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
+    ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen);
     SISUSBPtr pSiSUSB = SISUSBPTR(pScrn);
     DisplayModePtr mode = pSiSUSB->CurrentLayout.mode;
 
@@ -261,7 +261,7 @@ static void SiSUSBLoadCursorImageARGB(ScrnInfoPtr pScrn, CursorPtr pCurs)
 Bool
 SiSUSBHWCursorInit(ScreenPtr pScreen)
 {
-    ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
+    ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen);
     SISUSBPtr pSiSUSB = SISUSBPTR(pScrn);
     xf86CursorInfoPtr infoPtr;
 
diff --git a/src/sisusb_driver.c b/src/sisusb_driver.c
index 032225c..208cdbe 100644
--- a/src/sisusb_driver.c
+++ b/src/sisusb_driver.c
@@ -1638,10 +1638,10 @@ SISUSBBridgeRestore(ScrnInfoPtr pScrn)
 
 /* Our generic BlockHandler for Xv */
 static void
-SISUSBBlockHandler(int i, pointer blockData, pointer pTimeout, pointer pReadmask)
+SISUSBBlockHandler(BLOCKHANDLER_ARGS_DECL)
 {
-    ScreenPtr pScreen = screenInfo.screens[i];
-    ScrnInfoPtr pScrn = xf86Screens[i];
+    SCREEN_PTR(arg);
+    ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen);
     SISUSBPtr pSiSUSB = SISUSBPTR(pScrn);
 
     if((pSiSUSB->sisusbfatalerror) && (pSiSUSB->timeout != -1)) {
@@ -1651,7 +1651,7 @@ SISUSBBlockHandler(int i, pointer blockData, pointer pTimeout, pointer pReadmask
 	     pSiSUSB->sisusberrorsleepcount = 0;
 	     pSiSUSB->sisusbfatalerror = 0;
 	     pSiSUSB->sisusbdevopen = TRUE;
-	     (*pScrn->SwitchMode)(pScrn->scrnIndex, pScrn->currentMode, 0);
+	     (*pScrn->SwitchMode)(SWITCH_MODE_ARGS(pScrn, pScrn->currentMode));
 	     pSiSUSB->ShBoxcount = 1;
 	     pSiSUSB->ShXmin = pSiSUSB->ShYmin = 0;
 	     pSiSUSB->ShXmax = pScrn->virtualX;
@@ -1669,7 +1669,7 @@ SISUSBBlockHandler(int i, pointer blockData, pointer pTimeout, pointer pReadmask
     SISUSBDoRefreshArea(pScrn);
 
     pScreen->BlockHandler = pSiSUSB->BlockHandler;
-    (*pScreen->BlockHandler) (i, blockData, pTimeout, pReadmask);
+    (*pScreen->BlockHandler) (BLOCKHANDLER_ARGS);
     pScreen->BlockHandler = SISUSBBlockHandler;
 
     if(pSiSUSB->VideoTimerCallback) {
@@ -1686,9 +1686,9 @@ SISUSBBlockHandler(int i, pointer blockData, pointer pTimeout, pointer pReadmask
  * depth, bitsPerPixel)
  */
 static Bool
-SISUSBScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
+SISUSBScreenInit(SCREEN_INIT_ARGS_DECL)
 {
-    ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
+    ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen);
     SISUSBPtr pSiSUSB = SISUSBPTR(pScrn);
     int ret;
     VisualPtr visual;
@@ -1784,7 +1784,7 @@ SISUSBScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
     SISUSBSaveScreen(pScreen, SCREEN_SAVER_ON);
 
     /* Set the viewport */
-    SISUSBAdjustFrame(scrnIndex, pScrn->frameX0, pScrn->frameY0, 0);
+    SISUSBAdjustFrame(ADJUST_FRAME_ARGS(pScrn, pScrn->frameX0, pScrn->frameY0));
 
     /* Reset visual list. */
     miClearVisualTypes();
@@ -2044,13 +2044,13 @@ SISUSBScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
 
 /* Usually mandatory */
 Bool
-SISUSBSwitchMode(int scrnIndex, DisplayModePtr mode, int flags)
+SISUSBSwitchMode(SWITCH_MODE_ARGS_DECL)
 {
-    ScrnInfoPtr pScrn = xf86Screens[scrnIndex];
+    SCRN_INFO_PTR(arg);
     SISUSBPtr pSiSUSB = SISUSBPTR(pScrn);
 
     if(!pSiSUSB->skipswitchcheck) {
-       if(SISUSBValidMode(scrnIndex, mode, TRUE, flags) != MODE_OK) {
+       if(SISUSBValidMode(arg, mode, TRUE, 0) != MODE_OK) {
           return FALSE;
        }
     }
@@ -2061,7 +2061,7 @@ SISUSBSwitchMode(int scrnIndex, DisplayModePtr mode, int flags)
     }
 #endif
 
-    if(!(SISUSBModeInit(xf86Screens[scrnIndex], mode))) return FALSE;
+    if(!(SISUSBModeInit(pScrn, mode))) return FALSE;
 
     return TRUE;
 }
@@ -2089,9 +2089,9 @@ SISUSBSetStartAddressCRT1(SISUSBPtr pSiSUSB, ULong base)
  * Usually mandatory
  */
 void
-SISUSBAdjustFrame(int scrnIndex, int x, int y, int flags)
+SISUSBAdjustFrame(ADJUST_FRAME_ARGS_DECL)
 {
-    ScrnInfoPtr   pScrn = xf86Screens[scrnIndex];
+    SCRN_INFO_PTR(arg);
     SISUSBPtr        pSiSUSB = SISUSBPTR(pScrn);
     ULong base;
 
@@ -2130,9 +2130,9 @@ SISUSBAdjustFrame(int scrnIndex, int x, int y, int flags)
  * Mandatory!
  */
 static Bool
-SISUSBEnterVT(int scrnIndex, int flags)
+SISUSBEnterVT(VT_FUNC_ARGS_DECL)
 {
-    ScrnInfoPtr pScrn = xf86Screens[scrnIndex];
+    SCRN_INFO_PTR(arg);
     SISUSBPtr pSiSUSB = SISUSBPTR(pScrn);
 
     SiSUSB_SiSFB_Lock(pScrn, TRUE);
@@ -2148,7 +2148,7 @@ SISUSBEnterVT(int scrnIndex, int flags)
        return FALSE;
     }
 
-    SISUSBAdjustFrame(scrnIndex, pScrn->frameX0, pScrn->frameY0, 0);
+    SISUSBAdjustFrame(ADJUST_FRAME_ARGS(pScrn, pScrn->frameX0, pScrn->frameY0));
 
     if(pSiSUSB->ResetXv) {
        (pSiSUSB->ResetXv)(pScrn);
@@ -2163,9 +2163,9 @@ SISUSBEnterVT(int scrnIndex, int flags)
  * Mandatory!
  */
 static void
-SISUSBLeaveVT(int scrnIndex, int flags)
+SISUSBLeaveVT(VT_FUNC_ARGS_DECL)
 {
-    ScrnInfoPtr pScrn = xf86Screens[scrnIndex];
+    SCRN_INFO_PTR(arg);
     SISUSBPtr pSiSUSB = SISUSBPTR(pScrn);
 
     if(pSiSUSB->CursorInfoPtr) {
@@ -2197,9 +2197,9 @@ SISUSBLeaveVT(int scrnIndex, int flags)
  * Mandatory!
  */
 static Bool
-SISUSBCloseScreen(int scrnIndex, ScreenPtr pScreen)
+SISUSBCloseScreen(CLOSE_SCREEN_ARGS_DECL)
 {
-    ScrnInfoPtr pScrn = xf86Screens[scrnIndex];
+    ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen);
     SISUSBPtr pSiSUSB = SISUSBPTR(pScrn);
 
     if(pSiSUSB->SiSCtrlExtEntry) {
@@ -2273,7 +2273,7 @@ SISUSBCloseScreen(int scrnIndex, ScreenPtr pScreen)
 
     pScreen->CloseScreen = pSiSUSB->CloseScreen;
 
-    return(*pScreen->CloseScreen)(scrnIndex, pScreen);
+    return(*pScreen->CloseScreen)(CLOSE_SCREEN_ARGS);
 }
 
 
@@ -2281,18 +2281,19 @@ SISUSBCloseScreen(int scrnIndex, ScreenPtr pScreen)
 
 /* Optional */
 static void
-SISUSBFreeScreen(int scrnIndex, int flags)
+SISUSBFreeScreen(FREE_SCREEN_ARGS_DECL)
 {
-    SISUSBFreeRec(xf86Screens[scrnIndex]);
+    SCRN_INFO_PTR(arg);
+    SISUSBFreeRec(pScrn);
 }
 
 
 /* Checks if a mode is suitable for the selected chipset. */
 
 static ModeStatus
-SISUSBValidMode(int scrnIndex, DisplayModePtr mode, Bool verbose, int flags)
+SISUSBValidMode(SCRN_ARG_TYPE arg, DisplayModePtr mode, Bool verbose, int flags)
 {
-    ScrnInfoPtr pScrn = xf86Screens[scrnIndex];
+    SCRN_INFO_PTR(arg);
     SISUSBPtr pSiSUSB = SISUSBPTR(pScrn);
 
     if(SiSUSB_CheckModeCRT1(pScrn, mode, pSiSUSB->VBFlags, pSiSUSB->HaveCustomModes) < 0x14)
diff --git a/src/sisusb_driver.h b/src/sisusb_driver.h
index c4bc1dd..d0002d1 100644
--- a/src/sisusb_driver.h
+++ b/src/sisusb_driver.h
@@ -71,20 +71,20 @@ static const struct _sis_vrate {
 static void	SISUSBIdentify(int flags);
 static Bool	SISUSBProbe(DriverPtr drv, int flags);
 static Bool	SISUSBPreInit(ScrnInfoPtr pScrn, int flags);
-static Bool	SISUSBScreenInit(int Index, ScreenPtr pScreen, int argc, char **argv);
-static Bool	SISUSBEnterVT(int scrnIndex, int flags);
-static void	SISUSBLeaveVT(int scrnIndex, int flags);
-static Bool	SISUSBCloseScreen(int scrnIndex, ScreenPtr pScreen);
+static Bool	SISUSBScreenInit(SCREEN_INIT_ARGS_DECL);
+static Bool	SISUSBEnterVT(VT_FUNC_ARGS_DECL);
+static void	SISUSBLeaveVT(VT_FUNC_ARGS_DECL);
+static Bool	SISUSBCloseScreen(CLOSE_SCREEN_ARGS_DECL);
 static Bool	SISUSBSaveScreen(ScreenPtr pScreen, int mode);
-static Bool	SISUSBSwitchMode(int scrnIndex, DisplayModePtr mode, int flags);
-static void	SISUSBAdjustFrame(int scrnIndex, int x, int y, int flags);
+static Bool	SISUSBSwitchMode(SWITCH_MODE_ARGS_DECL);
+static void	SISUSBAdjustFrame(ADJUST_FRAME_ARGS_DECL);
 #ifdef SISUSB_HAVE_DRIVER_FUNC
 static Bool	SISUSBDriverFunc(ScrnInfoPtr pScrn, xorgDriverFuncOp op, pointer p);
 #endif
 
 /* Optional functions */
-static void       SISUSBFreeScreen(int scrnIndex, int flags);
-static ModeStatus SISUSBValidMode(int scrnIndex, DisplayModePtr mode,
+static void       SISUSBFreeScreen(FREE_SCREEN_ARGS_DECL);
+static ModeStatus SISUSBValidMode(SCRN_ARG_TYPE arg, DisplayModePtr mode,
 				Bool verbose, int flags);
 
 /* Internally used functions */
diff --git a/src/sisusb_vga.c b/src/sisusb_vga.c
index 404a2b1..1c9761d 100644
--- a/src/sisusb_vga.c
+++ b/src/sisusb_vga.c
@@ -327,7 +327,7 @@ SiSUSBVGASaveScreen(ScreenPtr pScreen, int mode)
 
     if(pScreen == NULL) return FALSE;
 
-    pScrn = xf86Screens[pScreen->myNum];
+    pScrn = xf86ScreenToScrn(pScreen);
 
     if(pScrn->vtSema) {
        SISUSBVGABlankScreen(pScrn, on);
diff --git a/src/sisusb_video.c b/src/sisusb_video.c
index 1dbf4f1..9340696 100644
--- a/src/sisusb_video.c
+++ b/src/sisusb_video.c
@@ -196,7 +196,7 @@ SISUSBResetXvGamma(ScrnInfoPtr pScrn)
 
 void SISUSBInitVideo(ScreenPtr pScreen)
 {
-    ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
+    ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen);
     XF86VideoAdaptorPtr *adaptors, *newAdaptors = NULL;
     XF86VideoAdaptorPtr newAdaptor = NULL;
     int num_adaptors;
@@ -372,7 +372,7 @@ set_maxencoding(SISUSBPtr pSiSUSB, SISUSBPortPrivPtr pPriv)
 static XF86VideoAdaptorPtr
 SISUSBSetupImageVideo(ScreenPtr pScreen)
 {
-    ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
+    ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen);
     SISUSBPtr pSiSUSB = SISUSBPTR(pScrn);
     XF86VideoAdaptorPtr adapt;
     SISUSBPortPrivPtr pPriv;
@@ -1477,7 +1477,7 @@ SISUSBAllocateOverlayMemory(
       xf86FreeOffscreenLinear(linear);
    }
 
-   pScreen = screenInfo.screens[pScrn->scrnIndex];
+   pScreen = xf86ScrnToScreen(pScrn);
 
    new_linear = xf86AllocateOffscreenLinear(pScreen, size, 8,
                                             NULL, NULL, NULL);

commit 02451944ba73887db9803f44a1826059d9105963
Author: Jeremy Huddleston <jeremyhu@apple.com>
Date:   Tue Nov 1 23:05:45 2011 -0700

    Build fix for -Werror=int-to-pointer-cast -Werror=pointer-to-int-cast
    
    Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>

diff --git a/src/sisusb_dac.c b/src/sisusb_dac.c
index 5e3eb7f..b5c4dce 100644
--- a/src/sisusb_dac.c
+++ b/src/sisusb_dac.c
@@ -672,7 +672,7 @@ SiSUSBMemCopyToVideoRam(SISUSBPtr pSiSUSB, UChar *to, UChar *from, int size)
    int num, retry = 3;
    if(pSiSUSB->sisusbfatalerror) return;
    do {
-      lseek(pSiSUSB->sisusbdev, (int)to, SEEK_SET);
+      lseek(pSiSUSB->sisusbdev, (uintptr_t)to, SEEK_SET);
       num = write(pSiSUSB->sisusbdev, from, size);
    } while((num != size) && --retry);
    if(!retry) SiSLostConnection(pSiSUSB);
@@ -958,7 +958,7 @@ void sisclearvram(SISUSBPtr pSiSUSB, UChar *where, unsigned int howmuch)
    if(pSiSUSB->sisusbfatalerror) return;
    do {
       x.operation = SUCMD_CLRSCR;
-      x.data3 = (CARD32)where;
+      x.data3 = (CARD32)(uintptr_t)where;
       x.data0 = (howmuch >> 16) & 0xff;
       x.data1 = (howmuch >> 8) & 0xff;
       x.data2 = howmuch & 0xff;
@@ -990,7 +990,7 @@ void SIS_MMIO_OUT8(SISUSBPtr pSiSUSB, UChar *base, unsigned int offset, CARD8 va
     int num, retry = 3;
     if(pSiSUSB->sisusbfatalerror) return;
     do {
-       lseek(pSiSUSB->sisusbdev, (int)base + offset, SEEK_SET);
+       lseek(pSiSUSB->sisusbdev, (uintptr_t)base + offset, SEEK_SET);
        num = write(pSiSUSB->sisusbdev, &val, 1);
     } while((num != 1) && --retry);
     if(!retry) SiSLostConnection(pSiSUSB);
@@ -1002,7 +1002,7 @@ void SIS_MMIO_OUT16(SISUSBPtr pSiSUSB, UChar *base, unsigned int offset, CARD16
     CARD16 buf = sisusb_cpu_to_le16(val);
     if(pSiSUSB->sisusbfatalerror) return;
     do {
-       lseek(pSiSUSB->sisusbdev, (int)base + offset, SEEK_SET);
+       lseek(pSiSUSB->sisusbdev, (uintptr_t)base + offset, SEEK_SET);
        num = write(pSiSUSB->sisusbdev, &buf, 2);
     } while((num != 2) && --retry);
     if(!retry) SiSLostConnection(pSiSUSB);
@@ -1014,7 +1014,7 @@ void SIS_MMIO_OUT32(SISUSBPtr pSiSUSB, UChar *base, unsigned int offset, CARD32
     CARD32 buf = sisusb_cpu_to_le32(val);
     if(pSiSUSB->sisusbfatalerror) return;
     do {
-       lseek(pSiSUSB->sisusbdev, (int)base + offset, SEEK_SET);
+       lseek(pSiSUSB->sisusbdev, (uintptr_t)base + offset, SEEK_SET);
        num = write(pSiSUSB->sisusbdev, &buf, 4);
     } while((num != 4) && --retry);
     if(!retry) SiSLostConnection(pSiSUSB);
@@ -1026,7 +1026,7 @@ CARD8 SIS_MMIO_IN8(SISUSBPtr pSiSUSB, UChar *base, unsigned int offset)
     CARD8 tmp;
     if(pSiSUSB->sisusbfatalerror) return 0;
     do {
-       lseek(pSiSUSB->sisusbdev, (int)base + offset, SEEK_SET);
+       lseek(pSiSUSB->sisusbdev, (uintptr_t)base + offset, SEEK_SET);
        num = read(pSiSUSB->sisusbdev, &tmp, 1);
     } while((num != 1) && --retry);
     if(!retry) SiSLostConnection(pSiSUSB);
@@ -1039,7 +1039,7 @@ CARD16 SIS_MMIO_IN16(SISUSBPtr pSiSUSB, UChar *base, unsigned int offset)
     CARD16 tmp;
     if(pSiSUSB->sisusbfatalerror) return 0;
     do {
-       lseek(pSiSUSB->sisusbdev, (int)base + offset, SEEK_SET);
+       lseek(pSiSUSB->sisusbdev, (uintptr_t)base + offset, SEEK_SET);
        num = read(pSiSUSB->sisusbdev, &tmp, 2);
     } while((num != 2) && --retry);
     if(!retry) SiSLostConnection(pSiSUSB);
@@ -1052,7 +1052,7 @@ CARD32 SIS_MMIO_IN32(SISUSBPtr pSiSUSB, UChar *base, unsigned int offset)
     CARD32 tmp;
     if(pSiSUSB->sisusbfatalerror) return 0;
     do {
-       lseek(pSiSUSB->sisusbdev, (int)base + offset, SEEK_SET);
+       lseek(pSiSUSB->sisusbdev, (uintptr_t)base + offset, SEEK_SET);
        num = read(pSiSUSB->sisusbdev, &tmp, 4);
     } while((num != 4) && --retry);
     if(!retry) SiSLostConnection(pSiSUSB);
diff --git a/src/sisusb_driver.c b/src/sisusb_driver.c
index 4531e1a..032225c 100644
--- a/src/sisusb_driver.c
+++ b/src/sisusb_driver.c
@@ -1456,8 +1456,8 @@ SISUSBMapMem(ScrnInfoPtr pScrn)
 {
     SISUSBPtr pSiSUSB = SISUSBPTR(pScrn);
 
-    pSiSUSB->FbBase = (UChar *)pSiSUSB->FbAddress;
-    pSiSUSB->IOBase = (UChar *)pSiSUSB->IOAddress;
+    pSiSUSB->FbBase = (UChar *)(uintptr_t)pSiSUSB->FbAddress;
+    pSiSUSB->IOBase = (UChar *)(uintptr_t)pSiSUSB->IOAddress;
 
     return TRUE;
 }

commit 2901c9cf5e842cef199676e76cd0ffa532a76a9b
Author: Jeremy Huddleston <jeremyhu@apple.com>
Date:   Tue Nov 1 22:57:33 2011 -0700

    Use unsigned long rather than deprecated IOADDRESS
    
    Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>

diff --git a/src/sisusb.h b/src/sisusb.h
index 1036d42..82ed509 100644
--- a/src/sisusb.h
+++ b/src/sisusb.h
@@ -739,7 +739,7 @@ typedef struct {
     Bool		skipswitchcheck;
     ULong		VBFlagsInit;
     DisplayModePtr	currentModeLast;
-    IOADDRESS		MyPIOOffset;
+    unsigned long		MyPIOOffset;
 
     char		messagebuffer[64];
     unsigned int	VGAMapSize;		/* SiSVGA stuff */
diff --git a/src/sisusb_osdef.h b/src/sisusb_osdef.h
index 2d938ad..500bffb 100644
--- a/src/sisusb_osdef.h
+++ b/src/sisusb_osdef.h
@@ -77,11 +77,11 @@
 
 #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))
 
 #endif  /* _SISUSB_OSDEF_H_ */
diff --git a/src/sisusb_types.h b/src/sisusb_types.h
index df3618f..9fc6b41 100644
--- a/src/sisusb_types.h
+++ b/src/sisusb_types.h
@@ -95,7 +95,7 @@ typedef unsigned char BOOLEAN;
 
 #define SISIOMEMTYPE
 
-typedef IOADDRESS SISIOADDRESS;
+typedef unsigned long SISIOADDRESS;
 
 typedef enum _SIS_CHIP_TYPE {
     SIS_VGALegacy = 0,

commit 6272e69d8519c43293192b48ff39c8b3a84635d3
Author: Jeremy Huddleston <jeremyhu@apple.com>
Date:   Fri Oct 7 12:45:00 2011 -0700

    Fix build failures with recent server changes to swapl and swaps
    
    Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>

diff --git a/src/sisusb.h b/src/sisusb.h
index fbbebc5..1036d42 100644
--- a/src/sisusb.h
+++ b/src/sisusb.h
@@ -113,6 +113,14 @@
 #include <X11/extensions/Xv.h>
 #endif
 
+#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
+
 /* Platform/architecture related definitions: */
 
 #undef SIS_PC_PLATFORM
diff --git a/src/sisusb_utility.c b/src/sisusb_utility.c
index 282f372..a9c1ee1 100644
--- a/src/sisusb_utility.c
+++ b/src/sisusb_utility.c
@@ -787,10 +787,10 @@ SiSUSBProcSiSCtrlQueryVersion(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);
@@ -832,15 +832,15 @@ SiSUSBProcSiSCtrlCommand(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);
@@ -867,7 +867,7 @@ SiSUSBSProcSiSCtrlQueryVersion(ClientPtr client)
 {
     REQUEST(xSiSCtrlQueryVersionReq);
     register int n;
-    swaps(&stuff->length, n);
+    _swaps(&stuff->length, n);
     REQUEST_SIZE_MATCH(xSiSCtrlQueryVersionReq);
     return SiSUSBProcSiSCtrlQueryVersion(client);
 }
@@ -878,14 +878,14 @@ SiSUSBSProcSiSCtrlCommand(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 SiSUSBProcSiSCtrlCommand(client);

commit dc6d77656d14853b462a8792007e73c5dc07a4b1
Author: Jeremy Huddleston <jeremyhu@apple.com>
Date:   Fri Oct 7 12:45:50 2011 -0700

    Also use calloc rather than xcalloc
    
    Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>

diff --git a/src/sisusb_driver.c b/src/sisusb_driver.c
index cb6bff5..4531e1a 100644
--- a/src/sisusb_driver.c
+++ b/src/sisusb_driver.c
@@ -1147,7 +1147,7 @@ SISUSBPreInit(ScrnInfoPtr pScrn, int flags)
 #endif
 
     if(pSiSUSB->HWCursor) {
-       if(!(pSiSUSB->USBCursorBuf = xcalloc(pSiSUSB->CursorSize * 4, 1))) pSiSUSB->HWCursor = FALSE;
+       if(!(pSiSUSB->USBCursorBuf = calloc(pSiSUSB->CursorSize * 4, 1))) pSiSUSB->HWCursor = FALSE;
 
        pSiSUSB->availMem -= (pSiSUSB->CursorSize * 2);
        if(pSiSUSB->OptUseColorCursor) pSiSUSB->availMem -= (pSiSUSB->CursorSize * 2);
diff --git a/src/sisusb_utility.c b/src/sisusb_utility.c
index 3c1bff4..282f372 100644
--- a/src/sisusb_utility.c
+++ b/src/sisusb_utility.c
@@ -926,7 +926,7 @@ SiSUSBCtrlExtInit(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,
diff --git a/src/sisusb_video.c b/src/sisusb_video.c
index 88db5b3..1dbf4f1 100644
--- a/src/sisusb_video.c
+++ b/src/sisusb_video.c
@@ -377,7 +377,7 @@ SISUSBSetupImageVideo(ScreenPtr pScreen)
     XF86VideoAdaptorPtr adapt;
     SISUSBPortPrivPtr pPriv;
 
-    if(!(adapt = xcalloc(1, sizeof(XF86VideoAdaptorRec) +
+    if(!(adapt = calloc(1, sizeof(XF86VideoAdaptorRec) +
                             sizeof(SISUSBPortPrivRec) +
                             sizeof(DevUnion))))
     	return NULL;

commit 3dc05f643235e78c2b9148c052a6bc45290fb34a
Author: Jeremy Huddleston <jeremyhu@apple.com>
Date:   Sat Sep 24 14:02:12 2011 -0700

    Use malloc/free rather than xalloc/xfree
    
    Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>

diff --git a/src/sisusb_driver.c b/src/sisusb_driver.c
index c53677b..cb6bff5 100644
--- a/src/sisusb_driver.c
+++ b/src/sisusb_driver.c
@@ -186,12 +186,12 @@ SISUSBFreeRec(ScrnInfoPtr pScrn)
     /* Just to make sure... */
     if(!pSiSUSB) return;
 
-    if(pSiSUSB->pstate) xfree(pSiSUSB->pstate);
+    if(pSiSUSB->pstate) free(pSiSUSB->pstate);
     pSiSUSB->pstate = NULL;
-    if(pSiSUSB->fonts) xfree(pSiSUSB->fonts);
+    if(pSiSUSB->fonts) free(pSiSUSB->fonts);
     pSiSUSB->fonts = NULL;
 
-    if(pSiSUSB->SiS_Pr) xfree(pSiSUSB->SiS_Pr);
+    if(pSiSUSB->SiS_Pr) free(pSiSUSB->SiS_Pr);
     pSiSUSB->SiS_Pr = NULL;
 
     if(pSiSUSB->sisusbdevopen) {
@@ -200,12 +200,12 @@ SISUSBFreeRec(ScrnInfoPtr pScrn)
     }
 
     if(pScrn->chipset) {
-       xfree(pScrn->chipset);
+       free(pScrn->chipset);
        pScrn->chipset = NULL;
     }
 
     if(pScrn->driverPrivate) {
-       xfree(pScrn->driverPrivate);
+       free(pScrn->driverPrivate);
        pScrn->driverPrivate = NULL;
     }
 }
@@ -248,7 +248,7 @@ SiSUSBCheckForUSBDongle(char *filename, SISUSBPtr pSiSUSB, int *filehandle)
 
     if((myfile = open(filename, O_RDWR, 0)) != -1) {
        if(!ioctl(myfile, SISUSB_GET_CONFIG_SIZE, &sisusbinfosize)) {
-	  if((mysisusbinfo = xalloc(sisusbinfosize))) {
+	  if((mysisusbinfo = malloc(sisusbinfosize))) {
 	     if(!ioctl(myfile, (SISUSB_GET_CONFIG | (sisusbinfosize << 16)), mysisusbinfo)) {
 		if(mysisusbinfo->sisusb_id == SISUSB_ID) {
 		   sisusbversion = (mysisusbinfo->sisusb_version  << 16) |
@@ -280,7 +280,7 @@ SiSUSBCheckForUSBDongle(char *filename, SISUSBPtr pSiSUSB, int *filehandle)
 		   retval = mysisusbinfo->sisusb_minor;
 		}
 	     }
-	     xfree(mysisusbinfo);
+	     free(mysisusbinfo);
 	     mysisusbinfo = NULL;
 	  }
        }
@@ -307,13 +307,13 @@ SiSUSBFindUSBDongle(GDevPtr dev, int *minorArray, int numDevSections, char **nam
        }
        if((p) && (*p) && (*p == '/')) {
           gotdev = 1;
-	  *nameptr = xalloc(strlen(p) + 1);
+	  *nameptr = malloc(strlen(p) + 1);
           strcpy(*nameptr, p);
 	  retval = SiSUSBCheckForUSBDongle(*nameptr, NULL, NULL);
        } else if((p) && (*p) && (sscanf(p, "%d", &i) == 1)) {
           if(i >= 0 && i <= 31) {
              gotdev = 1;
-	     *nameptr = xalloc(32);
+	     *nameptr = malloc(32);
              sprintf(*nameptr, "/dev/sisusbvga%d", i);
              retval = SiSUSBCheckForUSBDongle(*nameptr, NULL, NULL);
 	     if(retval < 0) {
@@ -324,7 +324,7 @@ SiSUSBFindUSBDongle(GDevPtr dev, int *minorArray, int numDevSections, char **nam
        }
     }
     if(!gotdev) {
-       *nameptr = xalloc(32);
+       *nameptr = malloc(32);
        for(i = 0; i < 64; i++) {
           if(i < 32) sprintf(*nameptr, "/dev/sisusbvga%d", i);
 	  else       sprintf(*nameptr, "/dev/usb/sisusbvga%d", i);
@@ -338,7 +338,7 @@ SiSUSBFindUSBDongle(GDevPtr dev, int *minorArray, int numDevSections, char **nam
     if(retval >= 0) {
        xf86Msg(X_INFO, "Found SiSUSB dongle (node %s, minor %d)\n", *nameptr, retval);
     } else if((*nameptr)) {
-       xfree(*nameptr);
+       free(*nameptr);
        *nameptr = NULL;
     }
 
@@ -401,14 +401,14 @@ SISUSBProbe(DriverPtr drv, int flags)
      */
 
     /* Allocate and initialize an array of ints for storing the minors */
-    if(!(minorArray = (int *)xalloc(numDevSections * sizeof(int)))) {
+    if(!(minorArray = (int *)malloc(numDevSections * sizeof(int)))) {
        return FALSE;
     }
     for(i = 0; i < numDevSections; i++) minorArray[i] = -1;
 
     /* Allocate an array of char ptrs for storing the device node names */
-    if(!(devnameArray = (char **)xalloc(numDevSections * sizeof(char *)))) {
-       xfree(minorArray);
+    if(!(devnameArray = (char **)malloc(numDevSections * sizeof(char *)))) {
+       free(minorArray);
        return FALSE;
     }
 
@@ -420,20 +420,20 @@ SISUSBProbe(DriverPtr drv, int flags)
        if((myminor = SiSUSBFindUSBDongle(devSections[i], minorArray, numDevSections, &nameptr)) >= 0) {
           if(!SiSUSBFindDuplicate(myminor, minorArray, numDevSections)) {
 	     minorArray[numUsed] = myminor;
-	     devnameArray[numUsed] = xalloc(strlen(nameptr) + 1);
+	     devnameArray[numUsed] = malloc(strlen(nameptr) + 1);
 	     strcpy(devnameArray[numUsed], nameptr);
              numUsed++;
 	  }
-	  xfree(nameptr);
+	  free(nameptr);
        }
     }
 
     /* Free the minor array, we don't need it anymore */
-    xfree(minorArray);
+    free(minorArray);
 
     if(numUsed <= 0) {
-       xfree(devSections);
-       xfree(devnameArray);
+       free(devSections);
+       free(devnameArray);
        return FALSE;
     }


Reply to: