ChangeLog | 287 ++++++++++++++++++++++++++++++++++++++++++++++++++++ configure.ac | 53 ++++----- debian/changelog | 7 + man/Makefile.am | 34 ------ man/sis.man | 20 --- src/initextx.c | 18 +-- src/osdef.h | 24 ++-- src/sis.h | 29 +++-- src/sis6326_video.c | 6 - src/sis_dga.c | 6 - src/sis_dri.c | 24 ++-- src/sis_driver.c | 269 ++++++++++++++++++++++++++++-------------------- src/sis_memcpy.c | 10 - src/sis_opt.c | 16 +- src/sis_utility.c | 48 ++++---- src/sis_vga.c | 11 + src/sis_video.c | 8 - src/sispcirename.h | 29 +++++ src/vgatypes.h | 12 -- 19 files changed, 616 insertions(+), 295 deletions(-)
New commits: commit 06c16a118166f221f25af2e523368480711192ab Author: Cyril Brulebois <k...@debian.org> Date: Tue May 1 19:17:31 2012 +0200 Upload to unstable. diff --git a/debian/changelog b/debian/changelog index e415c74..bc95aa1 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,9 +1,9 @@ -xserver-xorg-video-sis (1:0.10.4-1) UNRELEASED; urgency=low +xserver-xorg-video-sis (1:0.10.4-1) unstable; urgency=low * New upstream release: - Fix FTBFS with X server 1.12. - -- Cyril Brulebois <k...@debian.org> Tue, 01 May 2012 19:17:02 +0200 + -- Cyril Brulebois <k...@debian.org> Tue, 01 May 2012 19:17:28 +0200 xserver-xorg-video-sis (1:0.10.3-3) unstable; urgency=low commit 1c4f3505b7d75c409b00300b1f9ed73bb54ff22e Author: Cyril Brulebois <k...@debian.org> Date: Tue May 1 19:17:24 2012 +0200 Bump changelogs. diff --git a/ChangeLog b/ChangeLog index ecb8dfc..a9eb815 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,290 @@ +commit e067fc080c653a5d47cd319ca1a7afeebe6c7c4e +Author: Alan Coopersmith <alan.coopersm...@oracle.com> +Date: Fri Mar 23 19:52:38 2012 -0700 + + xf86-video-sis 0.10.4 + + Signed-off-by: Alan Coopersmith <alan.coopersm...@oracle.com> + +commit f5dafa24d825a7d279c8177422c66b997b82d240 +Author: Johannes Obermayr <johannesoberm...@gmx.de> +Date: Mon Feb 6 23:15:31 2012 +0100 + + Fix build with XInput version 12. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit bdaf1ba97cf8b0abb5aeee97a822ee466bf8f5f5 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Tue Jan 17 15:21:26 2012 +1000 + + Undo typos from last commit + + Reported-by: Tormod Volden <debian.tor...@gmail.com> + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + +commit 9c1f8f775ca692858fd88e325ef815cc49e55805 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Wed Jan 4 13:58:01 2012 +1000 + + Untangle XF86DRI from the driver-specific DRI define + + XF86DRI is defined by xorg-server.h, so --disable-dri in the sis driver + itself does exactly nothing other than not fill in the CFLAGS and thus stop + the driver from compiling. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + Reviewed-by: Jeremy Huddleston <jerem...@apple.com> + +commit 16724f3ecd322c64d9ee164fb122d4285d9cef08 +Author: Peter Hutterer <peter.hutte...@who-t.net> +Date: Mon Oct 31 15:03:21 2011 +1000 + + Use miPointerSetPosition, not miPointerAbsoluteCursor + + miPointerAbsoluteCursor was removed in '09. + + Technically this shouldn't just work on the VCP since any master pointer may + end up in the dead area. However, I suspect the Venn diagramm of MPX users + and sis merged framebuffer users shows little overlap. + + miPointerSetPosition's prototype changed a few times, these are a bunch of + untested ifdefs that should be correct according to the git history. + + Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> + Reviewed-by: Jeremy Huddleston <jerem...@apple.com> + +commit 3e0d8e11927b8c68f6531eef39eb5bca557e887b +Author: Adam Jackson <a...@redhat.com> +Date: Mon Dec 19 17:28:33 2011 -0500 + + Fall back to shadowfb if XAA is unavailable + + Signed-off-by: Adam Jackson <a...@redhat.com> + +commit 2b459f385dc2f1b5e769e2ce84b6f4ec099c0a23 +Author: Jeremy Huddleston <jerem...@apple.com> +Date: Mon Oct 31 11:57:49 2011 -0700 + + Build fix for older servers (error: conflicting types for 'pciTag') + + /usr/include/xorg/xf86Pci.h:254:25: note: previous declaration of 'pciTag' was here + + Reported-by: Johannes Obermayr <johannesoberm...@gmx.de> + Signed-off-by: Jeremy Huddleston <jerem...@apple.com> + +commit 0ab07a477a4916923a13c073c3fd6e575e79f725 +Author: Jeremy Huddleston <jerem...@apple.com> +Date: Sun Oct 30 11:09:30 2011 -0700 + + Use pci_device_map_legacy rather than xf86MapDomainMemory on newer servers + + Signed-off-by: Jeremy Huddleston <jerem...@apple.com> + +commit 77046f9be08295dbca69b51987df3308a284d87e +Author: Jeremy Huddleston <jerem...@apple.com> +Date: Sat Oct 29 17:44:55 2011 -0700 + + Convert use of LookupWindow to dixLookupWindow + + Signed-off-by: Jeremy Huddleston <jerem...@apple.com> + +commit 06f8213bffd27360d5cc3df0cad19b102cc928e2 +Author: Jeremy Huddleston <jerem...@apple.com> +Date: Sat Oct 29 17:32:21 2011 -0700 + + pciTag was removed from xorg-server, so provide it in-driver until this is updated to use libpciaccess + + Signed-off-by: Jeremy Huddleston <jerem...@apple.com> + +commit 03644653d051e4f5b8498c790626a9bed2756a89 +Author: Jeremy Huddleston <jerem...@apple.com> +Date: Sat Oct 29 17:25:18 2011 -0700 + + Silence warnings by using newer xf86dgaproto + + Signed-off-by: Jeremy Huddleston <jerem...@apple.com> + +commit 4b0aab53a1e8500578f86178761f4c805b2a5990 +Author: Jeremy Huddleston <jerem...@apple.com> +Date: Wed Oct 19 00:40:32 2011 -0700 + + Build fix for ABI Version 12 + + ABI Version 12 removes support for multiple PCI domains. If you need to + use this driver on a system with more than one PCI domain, you should + either port this driver to using libpciaccess directly or stick with an + older server. + + Signed-off-by: Jeremy Huddleston <jerem...@apple.com> + +commit 69aa104ed064ca08196e7310e232ddb5c9a590bd +Author: Jeremy Huddleston <jerem...@apple.com> +Date: Wed Oct 19 00:35:02 2011 -0700 + + Use unsigned long rather than deprecated IOADDRESS + + Signed-off-by: Jeremy Huddleston <jerem...@apple.com> + +commit 28f3a899a1e317b665cc1925ce7a4e34818cfd1f +Author: Jeremy Huddleston <jerem...@apple.com> +Date: Fri Oct 7 12:32:22 2011 -0700 + + Use malloc/calloc/realloc/free directly + + Signed-off-by: Jeremy Huddleston <jerem...@apple.com> + +commit c530ebb5d4ad0663838a0132e3610d713eaaa640 +Author: Jeremy Huddleston <jerem...@apple.com> +Date: Fri Oct 7 12:24:40 2011 -0700 + + Fix build failures with recent server changes to swapl and swaps + + Signed-off-by: Jeremy Huddleston <jerem...@apple.com> + +commit 89e9a38f0ccda9b9ee973f5cd5e57cad73eb7421 +Author: Matt Turner <matts...@gmail.com> +Date: Sun Sep 25 12:32:08 2011 -0400 + + Fix wrong-sized swaps + + Signed-off-by: Matt Turner <matts...@gmail.com> + +commit 94f23a5672ebeac61cc32e34882d637aa0c7f2f4 +Author: Alan Coopersmith <alan.coopersm...@oracle.com> +Date: Sat Jun 4 21:00:03 2011 -0700 + + Convert sis.man from XORG_RAWCPP to using sed like other drivers + + Upgrade to util-macros 1.8 for additional man page support + + Use MAN_SUBST now supplied in XORG_MANPAGE_SECTIONS + The value of MAN_SUBST is the same for all X.Org packages. + + Use AC_PROG_SED now supplied by XORG_DEFAULT_OPTIONS + The existing statement can now be removed from the configuration file. + + Use automake provided $(AM_V_GEN) and XORG_DEFAULT_OPTIONS provided $(SED) + Enables silent rule and use platform appropriate version of sed. + + Signed-off-by: Alan Coopersmith <alan.coopersm...@oracle.com> + Reviewed-by: Gaetan Nadon <mems...@videotron.ca> + +commit b3368984ae83355d70e06eedefff28c1b84eb16c +Author: Jesse Adkins <jesserayadk...@gmail.com> +Date: Tue Sep 28 13:29:51 2010 -0700 + + Purge cvs tags. + + Signed-off-by: Jesse Adkins <jesserayadk...@gmail.com> + Signed-off-by: Alan Coopersmith <alan.coopersm...@oracle.com> + +commit c2a6ffda81b343d09dfae6ef68983bf28194a00c +Author: Gaetan Nadon <mems...@videotron.ca> +Date: Wed Jul 21 16:49:04 2010 -0400 + + config: add comments for main statements + +commit ae7ac7fe58a1311544b9d0091614a61d29eef171 +Author: Gaetan Nadon <mems...@videotron.ca> +Date: Wed Jul 21 16:07:00 2010 -0400 + + config: replace deprecated use of AC_OUTPUT with AC_CONFIG_FILES + + Signed-off-by: Gaetan Nadon <mems...@videotron.ca> + +commit fe34acc246e938bd190af11a0361a2541fcc590c +Author: Gaetan Nadon <mems...@videotron.ca> +Date: Wed Jul 21 14:37:41 2010 -0400 + + config: replace deprecated AC_HELP_STRING with AS_HELP_STRING + + Signed-off-by: Gaetan Nadon <mems...@videotron.ca> + +commit 4d77c76f9c94804efd942328722fb1262df74f5a +Author: Gaetan Nadon <mems...@videotron.ca> +Date: Wed Jul 21 14:05:23 2010 -0400 + + config: replace deprecated AM_CONFIG_HEADER with AC_CONFIG_HEADERS + + Signed-off-by: Gaetan Nadon <mems...@videotron.ca> + +commit 2a3e9ff44670c0763557ce9c87b9946bd4349027 +Author: Gaetan Nadon <mems...@videotron.ca> +Date: Wed Jul 21 09:27:42 2010 -0400 + + config: complete AC_INIT m4 quoting + + Signed-off-by: Gaetan Nadon <mems...@videotron.ca> + +commit 00d2b8790a0aa732d0abb4688330749a1c44763d +Author: Gaetan Nadon <mems...@videotron.ca> +Date: Tue Jul 20 21:54:12 2010 -0400 + + config: remove unrequired AC_SUBST([DRI_CFLAGS]) + + This macro is called by PKG_CHECK_MODULES + + Signed-off-by: Gaetan Nadon <mems...@videotron.ca> + +commit ca0dd9ac3d78991f20e19e9b1cbb06b8707698bd +Author: Gaetan Nadon <mems...@videotron.ca> +Date: Tue Jul 20 21:44:58 2010 -0400 + + config: remove unrequired AC_SUBST([XORG_CFLAGS]) + + This macro is called by PKG_CHECK_MODULES + + Signed-off-by: Gaetan Nadon <mems...@videotron.ca> + +commit 96daa64b9ce5a44474fa0c62c5cc5971496120ee +Author: Gaetan Nadon <mems...@videotron.ca> +Date: Tue Jul 20 20:24:42 2010 -0400 + + config: remove unrequired AC_HEADER_STDC + + Autoconf says: + "This macro is obsolescent, as current systems have conforming + header files. New programs need not use this macro". + + Signed-off-by: Gaetan Nadon <mems...@videotron.ca> + +commit 517a7563c43841ecb1cb00577540118f93856df8 +Author: Gaetan Nadon <mems...@videotron.ca> +Date: Tue Jul 20 19:41:31 2010 -0400 + + config: remove AC_PROG_CC as it overrides AC_PROG_C_C99 + + XORG_STRICT_OPTION from XORG_DEFAULT_OPTIONS calls + AC_PROG_C_C99. This sets gcc with -std=gnu99. + If AC_PROG_CC macro is called afterwards, it resets CC to gcc. + + Signed-off-by: Gaetan Nadon <mems...@videotron.ca> + +commit 494ce36b3bf1cfffb12c70ea969381766b46e622 +Author: Gaetan Nadon <mems...@videotron.ca> +Date: Tue Jul 20 18:45:19 2010 -0400 + + config: update AC_PREREQ statement to 2.60 + + Unrelated to the previous patches, the new value simply reflects + the reality that the minimum level for autoconf to configure + all x.org modules is 2.60 dated June 2006. + + ftp://ftp.gnu.org/gnu/autoconf/autoconf-2.60.tar.gz + + Signed-off-by: Gaetan Nadon <mems...@videotron.ca> + +commit 519a4653ffdd5b643b6f3c0f38eb2cad8366215b +Author: Fernando Carrijo <fcarr...@yahoo.com.br> +Date: Thu Jul 1 07:16:18 2010 -0300 + + Purge macros NEED_EVENTS and NEED_REPLIES + + Signed-off-by: Fernando Carrijo <fcarr...@yahoo.com.br> + Acked-by: Tiago Vignatti <tiago.vigna...@nokia.com> + Reviewed-by: Alan Coopersmith <alan.coopersm...@oracle.com> + commit 75a8a7c51547805358ced39e1a04820e17133264 Author: Dave Airlie <airl...@redhat.com> Date: Mon Jul 5 14:23:33 2010 +1000 diff --git a/debian/changelog b/debian/changelog index e5eac8c..e415c74 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +xserver-xorg-video-sis (1:0.10.4-1) UNRELEASED; urgency=low + + * New upstream release: + - Fix FTBFS with X server 1.12. + + -- Cyril Brulebois <k...@debian.org> Tue, 01 May 2012 19:17:02 +0200 + xserver-xorg-video-sis (1:0.10.3-3) unstable; urgency=low * Switch to dh: commit e067fc080c653a5d47cd319ca1a7afeebe6c7c4e Author: Alan Coopersmith <alan.coopersm...@oracle.com> Date: Fri Mar 23 19:52:38 2012 -0700 xf86-video-sis 0.10.4 Signed-off-by: Alan Coopersmith <alan.coopersm...@oracle.com> diff --git a/configure.ac b/configure.ac index 62ad933..ab40a65 100644 --- a/configure.ac +++ b/configure.ac @@ -23,7 +23,7 @@ # Initialize Autoconf AC_PREREQ([2.60]) AC_INIT([xf86-video-sis], - [0.10.3], + [0.10.4], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], [xf86-video-sis]) AC_CONFIG_SRCDIR([Makefile.am]) commit f5dafa24d825a7d279c8177422c66b997b82d240 Author: Johannes Obermayr <johannesoberm...@gmx.de> Date: Mon Feb 6 23:15:31 2012 +0100 Fix build with XInput version 12. Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> diff --git a/src/sis_driver.c b/src/sis_driver.c index d733f48..7a5be4e 100644 --- a/src/sis_driver.c +++ b/src/sis_driver.c @@ -85,7 +85,7 @@ #include <X11/extensions/dpms.h> #endif -#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 15 +#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 5 #include <inputstr.h> /* for inputInfo */ #endif @@ -9358,7 +9358,7 @@ SISMergedPointerMoved(int scrnIndex, int x, int y) x = (int)dx; y = (int)dy; } -#elif GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 11 +#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); commit bdaf1ba97cf8b0abb5aeee97a822ee466bf8f5f5 Author: Peter Hutterer <peter.hutte...@who-t.net> Date: Tue Jan 17 15:21:26 2012 +1000 Undo typos from last commit Reported-by: Tormod Volden <debian.tor...@gmail.com> Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> diff --git a/configure.ac b/configure.ac index a599108..62ad933 100644 --- a/configure.ac +++ b/configure.ac @@ -100,7 +100,7 @@ AM_CONDITIONAL(DRI, test x$DRI = xyes) if test "$DRI" = yes; then PKG_CHECK_MODULES(DRI, [libdrm >= 2.0 xf86driproto]) AC_DEFINE(SISDRI,1,[Enable DRI driver support]) - AC_DEFINE(SIDDRI_DEVEL,1,[Enable developmental DRI driver support]) + AC_DEFINE(SISDRI_DEVEL,1,[Enable developmental DRI driver support]) fi # technically this should be a configure flag. meh. diff --git a/src/sis_dri.c b/src/sis_dri.c index d0c4fba..97ed951 100644 --- a/src/sis_dri.c +++ b/src/sis_dri.c @@ -369,7 +369,7 @@ SISDRIScreenInit(ScreenPtr pScreen) */ pDRIInfo->SAREASize = ((sizeof(XF86DRISAREARec) + getpagesize() - 1) & getpagesize()); /* round to page */ - /* ((sizeof(SISDRISAREARec) + 0xfff) & 0x1000); */ /* round to page */ + /* ((sizeof(XF86DRISAREARec) + 0xfff) & 0x1000); */ /* round to page */ /* + shared memory device private rec */ #else /* For now the mapping works by using a fixed size defined commit 9c1f8f775ca692858fd88e325ef815cc49e55805 Author: Peter Hutterer <peter.hutte...@who-t.net> Date: Wed Jan 4 13:58:01 2012 +1000 Untangle XF86DRI from the driver-specific DRI define XF86DRI is defined by xorg-server.h, so --disable-dri in the sis driver itself does exactly nothing other than not fill in the CFLAGS and thus stop the driver from compiling. Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> Reviewed-by: Jeremy Huddleston <jerem...@apple.com> diff --git a/configure.ac b/configure.ac index 036a448..a599108 100644 --- a/configure.ac +++ b/configure.ac @@ -99,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(SIDDRI_DEVEL,1,[Enable developmental DRI driver support]) fi # technically this should be a configure flag. meh. diff --git a/src/sis.h b/src/sis.h index 9af31a5..f2ca3a9 100644 --- a/src/sis.h +++ b/src/sis.h @@ -181,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 @@ -195,7 +201,7 @@ #include "dri.h" #include "GL/glxint.h" #include "sis_dri.h" -#endif /* XF86DRI */ +#endif /* SISDRI */ /* Configurable stuff: ------------------------------------- */ @@ -812,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; @@ -1092,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; @@ -1151,7 +1157,7 @@ typedef struct { /* DRI */ Bool loadDRI; -#ifdef XF86DRI +#ifdef SISDRI Bool directRenderingEnabled; DRIInfoPtr pDRIInfo; int drmSubFD; diff --git a/src/sis_dri.c b/src/sis_dri.c index 97ed951..d0c4fba 100644 --- a/src/sis_dri.c +++ b/src/sis_dri.c @@ -369,7 +369,7 @@ SISDRIScreenInit(ScreenPtr pScreen) */ pDRIInfo->SAREASize = ((sizeof(XF86DRISAREARec) + getpagesize() - 1) & getpagesize()); /* round to page */ - /* ((sizeof(XF86DRISAREARec) + 0xfff) & 0x1000); */ /* round to page */ + /* ((sizeof(SISDRISAREARec) + 0xfff) & 0x1000); */ /* round to page */ /* + shared memory device private rec */ #else /* For now the mapping works by using a fixed size defined diff --git a/src/sis_driver.c b/src/sis_driver.c index 3218239..d733f48 100644 --- a/src/sis_driver.c +++ b/src/sis_driver.c @@ -90,7 +90,7 @@ #endif -#ifdef XF86DRI +#ifdef SISDRI #include "dri.h" #endif @@ -6895,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")) { @@ -8731,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 */ @@ -9044,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, @@ -9778,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]); } @@ -9804,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) { @@ -9888,7 +9888,7 @@ SISCloseScreen(int scrnIndex, ScreenPtr pScreen) SiSCtrlExtUnregister(pSiS, pScrn->scrnIndex); } -#ifdef XF86DRI +#ifdef SISDRI if(pSiS->directRenderingEnabled) { SISDRICloseScreen(pScreen); pSiS->directRenderingEnabled = FALSE; diff --git a/src/sis_opt.c b/src/sis_opt.c index d39ff6e..3fa12c9 100644 --- a/src/sis_opt.c +++ b/src/sis_opt.c @@ -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; @@ -2034,7 +2034,7 @@ SiSOptions(ScrnInfoPtr pScrn) } } -#ifdef XF86DRI +#ifdef SISDRI /* DRI */ from = X_DEFAULT; if(xf86GetOptValBool(pSiS->Options, OPTION_DRI, &pSiS->loadDRI)) { commit 16724f3ecd322c64d9ee164fb122d4285d9cef08 Author: Peter Hutterer <peter.hutte...@who-t.net> Date: Mon Oct 31 15:03:21 2011 +1000 Use miPointerSetPosition, not miPointerAbsoluteCursor miPointerAbsoluteCursor was removed in '09. Technically this shouldn't just work on the VCP since any master pointer may end up in the dead area. However, I suspect the Venn diagramm of MPX users and sis merged framebuffer users shows little overlap. miPointerSetPosition's prototype changed a few times, these are a bunch of untested ifdefs that should be correct according to the git history. Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> Reviewed-by: Jeremy Huddleston <jerem...@apple.com> diff --git a/src/sis_driver.c b/src/sis_driver.c index 6f7a15e..3218239 100644 --- a/src/sis_driver.c +++ b/src/sis_driver.c @@ -85,6 +85,10 @@ #include <X11/extensions/dpms.h> #endif +#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 15 +#include <inputstr.h> /* for inputInfo */ +#endif + #ifdef XF86DRI #include "dri.h" @@ -9346,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) >= 11 + 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; } commit 3e0d8e11927b8c68f6531eef39eb5bca557e887b Author: Adam Jackson <a...@redhat.com> Date: Mon Dec 19 17:28:33 2011 -0500 Fall back to shadowfb if XAA is unavailable Signed-off-by: Adam Jackson <a...@redhat.com> diff --git a/src/sis_driver.c b/src/sis_driver.c index 7ac9487..6f7a15e 100644 --- a/src/sis_driver.c +++ b/src/sis_driver.c @@ -6858,8 +6858,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 @@ -6878,7 +6880,6 @@ SISPreInit(ScrnInfoPtr pScrn, int flags) } } #endif - xf86DrvMsg(pScrn->scrnIndex, X_INFO, "2D acceleration enabled\n"); } /* Load shadowfb (if needed) */ commit 2b459f385dc2f1b5e769e2ce84b6f4ec099c0a23 Author: Jeremy Huddleston <jerem...@apple.com> Date: Mon Oct 31 11:57:49 2011 -0700 Build fix for older servers (error: conflicting types for 'pciTag') /usr/include/xorg/xf86Pci.h:254:25: note: previous declaration of 'pciTag' was here Reported-by: Johannes Obermayr <johannesoberm...@gmx.de> Signed-off-by: Jeremy Huddleston <jerem...@apple.com> diff --git a/src/sispcirename.h b/src/sispcirename.h index 54cc07f..a354ac4 100644 --- a/src/sispcirename.h +++ b/src/sispcirename.h @@ -36,6 +36,10 @@ enum region_type { 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 @@ -57,6 +61,7 @@ pciTag(int busnum, int devnum, int funcnum) return tag; } +#endif /* GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) >= 12 */ #ifndef XSERVER_LIBPCIACCESS commit 0ab07a477a4916923a13c073c3fd6e575e79f725 Author: Jeremy Huddleston <jerem...@apple.com> Date: Sun Oct 30 11:09:30 2011 -0700 Use pci_device_map_legacy rather than xf86MapDomainMemory on newer servers Signed-off-by: Jeremy Huddleston <jerem...@apple.com> diff --git a/configure.ac b/configure.ac index f8d09af..036a448 100644 --- a/configure.ac +++ b/configure.ac @@ -114,7 +114,7 @@ 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) diff --git a/src/sis_vga.c b/src/sis_vga.c index 5e6d0b4..4c887b8 100644 --- a/src/sis_vga.c +++ b/src/sis_vga.c @@ -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 commit 77046f9be08295dbca69b51987df3308a284d87e Author: Jeremy Huddleston <jerem...@apple.com> Date: Sat Oct 29 17:44:55 2011 -0700 Convert use of LookupWindow to dixLookupWindow Signed-off-by: Jeremy Huddleston <jerem...@apple.com> diff --git a/src/sis_driver.c b/src/sis_driver.c index a8af80c..7ac9487 100644 --- a/src/sis_driver.c +++ b/src/sis_driver.c @@ -90,6 +90,26 @@ #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 @@ -2146,10 +2166,12 @@ 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; @@ -2170,10 +2192,12 @@ 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; @@ -2194,10 +2218,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; commit 06f8213bffd27360d5cc3df0cad19b102cc928e2 Author: Jeremy Huddleston <jerem...@apple.com> Date: Sat Oct 29 17:32:21 2011 -0700 pciTag was removed from xorg-server, so provide it in-driver until this is updated to use libpciaccess Signed-off-by: Jeremy Huddleston <jerem...@apple.com> diff --git a/src/sispcirename.h b/src/sispcirename.h index c4beac6..54cc07f 100644 --- a/src/sispcirename.h +++ b/src/sispcirename.h @@ -29,11 +29,35 @@ #ifndef SISPCIRENAME_H #define SISPCIRENAME_H +#include <stdint.h> + enum region_type { REGION_MEM, REGION_IO }; +#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; +} + #ifndef XSERVER_LIBPCIACCESS /* pciVideoPtr */ commit 03644653d051e4f5b8498c790626a9bed2756a89 Author: Jeremy Huddleston <jerem...@apple.com> Date: Sat Oct 29 17:25:18 2011 -0700 Silence warnings by using newer xf86dgaproto Signed-off-by: Jeremy Huddleston <jerem...@apple.com> diff --git a/configure.ac b/configure.ac index 8920c6f..f8d09af 100644 --- a/configure.ac +++ b/configure.ac @@ -66,7 +66,7 @@ XORG_DRIVER_CHECK_EXT(XV, videoproto) XORG_DRIVER_CHECK_EXT(DPMSExtension, xextproto) # Obtain compiler/linker options for the driver dependencies -PKG_CHECK_MODULES(XORG, [xorg-server >= 1.0.99.901 xproto fontsproto xf86dgaproto $REQUIRED_MODULES]) +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") diff --git a/src/sis_driver.c b/src/sis_driver.c index e19bfff..a8af80c 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" commit 4b0aab53a1e8500578f86178761f4c805b2a5990 Author: Jeremy Huddleston <jerem...@apple.com> Date: Wed Oct 19 00:40:32 2011 -0700 Build fix for ABI Version 12 ABI Version 12 removes support for multiple PCI domains. If you need to use this driver on a system with more than one PCI domain, you should either port this driver to using libpciaccess directly or stick with an older server. Signed-off-by: Jeremy Huddleston <jerem...@apple.com> diff --git a/src/sis_driver.c b/src/sis_driver.c index 17441ed..e19bfff 100644 --- a/src/sis_driver.c -- To UNSUBSCRIBE, email to debian-x-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/e1spgoq-0001w3...@vasks.debian.org