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: