.cvsignore | 19 ---- .gitignore | 20 ++++ configure.ac | 15 +++ man/.cvsignore | 2 man/.gitignore | 2 man/Makefile.am | 1 src/.cvsignore | 6 - src/.gitignore | 6 + src/300vtbl.h | 2 src/310vtbl.h | 2 src/Makefile.am | 1 src/init.c | 16 +-- src/init.h | 2 src/init301.c | 8 - src/init301.h | 2 src/initdef.h | 2 src/initextx.c | 2 src/initextx.h | 2 src/oem300.h | 2 src/oem310.h | 2 src/osdef.h | 2 src/sis.h | 39 +++++---- src/sis300_accel.c | 2 src/sis300_accel.h | 2 src/sis310_accel.c | 2 src/sis310_accel.h | 2 src/sis6326_video.c | 2 src/sis_accel.c | 2 src/sis_accel.h | 2 src/sis_common.h | 2 src/sis_cursor.c | 2 src/sis_cursor.h | 2 src/sis_dac.c | 16 +-- src/sis_dac.h | 2 src/sis_dga.c | 2 src/sis_dri.c | 6 - src/sis_dri.h | 5 - src/sis_driver.c | 212 ++++++++++++++++++++++++++++++++++++++++++---------- src/sis_driver.h | 2 src/sis_opt.c | 2 src/sis_regs.h | 2 src/sis_setup.c | 189 ++++++++++++++++++++++++++++++++++++++-------- src/sis_shadow.c | 2 src/sis_utility.c | 2 src/sis_vb.c | 2 src/sis_vga.c | 7 + src/sis_video.c | 2 src/sis_video.h | 4 src/sis_videostr.h | 2 src/sispcirename.h | 122 +++++++++++++++++++++++++++++ src/vgatypes.h | 2 src/vstruct.h | 2 52 files changed, 545 insertions(+), 215 deletions(-)
New commits: commit 70ccce405b2134e7548a4a3660f9cff9fc306780 Author: Adam Jackson <[EMAIL PROTECTED]> Date: Wed Mar 19 15:31:27 2008 -0400 sis 0.10.0 diff --git a/configure.ac b/configure.ac index 471f676..796269a 100644 --- a/configure.ac +++ b/configure.ac @@ -22,7 +22,7 @@ AC_PREREQ(2.57) AC_INIT([xf86-video-sis], - 0.9.4, + 0.10.0, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xf86-video-sis) commit 3aff2a77c9c6bfff543195dc8908e422793a8f37 Author: Adam Jackson <[EMAIL PROTECTED]> Date: Wed Mar 19 15:29:30 2008 -0400 Fix distcheck diff --git a/src/Makefile.am b/src/Makefile.am index 281db15..8491d2d 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -46,6 +46,7 @@ sis_drv_la_SOURCES = \ sis310_accel.c \ sis310_accel.h \ sis6326_video.c \ + sispcirename.h \ sis_accel.c \ sis_accel.h \ sis_common.h \ commit be77b71c3614e5b926caf3a177f6d5b7ef8d528b Author: Adam Jackson <[EMAIL PROTECTED]> Date: Wed Mar 19 15:28:09 2008 -0400 Death to RCS tags. diff --git a/src/300vtbl.h b/src/300vtbl.h index e4b4a26..289e465 100644 --- a/src/300vtbl.h +++ b/src/300vtbl.h @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * Register settings for SiS 300 series * diff --git a/src/310vtbl.h b/src/310vtbl.h index 20d6b63..290842d 100644 --- a/src/310vtbl.h +++ b/src/310vtbl.h @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * Register settings for SiS 315/330/340 series * diff --git a/src/init.c b/src/init.c index f2b48a0..74df1f5 100644 --- a/src/init.c +++ b/src/init.c @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * Mode initializing code (CRT1 section) for * for SiS 300/305/540/630/730, diff --git a/src/init.h b/src/init.h index 8f2ba67..bc90933 100644 --- a/src/init.h +++ b/src/init.h @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * Data and prototypes for init.c * diff --git a/src/init301.c b/src/init301.c index 2eded9f..ffa6eaa 100644 --- a/src/init301.c +++ b/src/init301.c @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * Mode initializing code (CRT2 section) * for SiS 300/305/540/630/730, diff --git a/src/init301.h b/src/init301.h index 60f8116..7dca546 100644 --- a/src/init301.h +++ b/src/init301.h @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * Data and prototypes for init301.c * diff --git a/src/initdef.h b/src/initdef.h index 9dc9efe..62ec836 100644 --- a/src/initdef.h +++ b/src/initdef.h @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * Global definitions for init.c and init301.c * diff --git a/src/initextx.c b/src/initextx.c index 3c2b17e..5c00398 100644 --- a/src/initextx.c +++ b/src/initextx.c @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * X.org/XFree86 specific extensions to init.c/init301.c * diff --git a/src/initextx.h b/src/initextx.h index c4a5ded..fb00119 100644 --- a/src/initextx.h +++ b/src/initextx.h @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * X.org/XFree86 specific supplements to init.c/init301.c * diff --git a/src/oem300.h b/src/oem300.h index b73f268..906bc6f 100644 --- a/src/oem300.h +++ b/src/oem300.h @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * OEM Data for 300 series * diff --git a/src/oem310.h b/src/oem310.h index 8fce56e..95094a8 100644 --- a/src/oem310.h +++ b/src/oem310.h @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * OEM Data for 315/330/340 series * diff --git a/src/osdef.h b/src/osdef.h index 03e4869..cd6b907 100644 --- a/src/osdef.h +++ b/src/osdef.h @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * OS depending defines * diff --git a/src/sis.h b/src/sis.h index 0da6e0f..9bafd4b 100644 --- a/src/sis.h +++ b/src/sis.h @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg: driver/xf86-video-sis/src/sis.h,v 1.67 2006/04/07 21:05:21 ajax Exp $ */ /* * Main global data and definitions * diff --git a/src/sis300_accel.c b/src/sis300_accel.c index c28c207..503dee9 100644 --- a/src/sis300_accel.c +++ b/src/sis300_accel.c @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg: driver/xf86-video-sis/src/sis300_accel.c,v 1.23 2006-03-09 06:06:25 anholt Exp $ */ /* * 2D Acceleration for SiS 530, 620, 300, 540, 630, 730. * diff --git a/src/sis300_accel.h b/src/sis300_accel.h index a654bca..3a0707d 100644 --- a/src/sis300_accel.h +++ b/src/sis300_accel.h @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * 2D Acceleration for SiS 530, 620, 300, 540, 630, 730. * Definitions for the SIS engine communication diff --git a/src/sis310_accel.c b/src/sis310_accel.c index 2406e09..8bba823 100644 --- a/src/sis310_accel.c +++ b/src/sis310_accel.c @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg: driver/xf86-video-sis/src/sis310_accel.c,v 1.31 2006-03-09 06:06:25 anholt Exp $ */ /* * 2D Acceleration for SiS 315, 330 and 340 series * diff --git a/src/sis310_accel.h b/src/sis310_accel.h index 93e7a8d..25a817b 100644 --- a/src/sis310_accel.h +++ b/src/sis310_accel.h @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * 2D Acceleration for SiS 315 and Xabre series * Definitions for the SIS engine communication. diff --git a/src/sis6326_video.c b/src/sis6326_video.c index b015303..c6b18e2 100644 --- a/src/sis6326_video.c +++ b/src/sis6326_video.c @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg: driver/xf86-video-sis/src/sis6326_video.c,v 1.19 2005/10/16 18:12:32 twini Exp $ */ /* * Xv driver for SiS 5597/5598, 6326 and 530/620. * diff --git a/src/sis_accel.c b/src/sis_accel.c index ee2c896..b85c893 100644 --- a/src/sis_accel.c +++ b/src/sis_accel.c @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg: driver/xf86-video-sis/src/sis_accel.c,v 1.23 2006-03-09 06:06:25 anholt Exp $ */ /* * 2D acceleration for SiS5597/5598 and 6326 * diff --git a/src/sis_accel.h b/src/sis_accel.h index 1ec72be..99ec5ae 100644 --- a/src/sis_accel.h +++ b/src/sis_accel.h @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * 2D acceleration for 5597/5598 and 6326 * Definitions for the SIS engine communication diff --git a/src/sis_common.h b/src/sis_common.h index 9215786..b606492 100644 --- a/src/sis_common.h +++ b/src/sis_common.h @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * Common header definitions for SiS 2D/3D/DRM suite * diff --git a/src/sis_cursor.c b/src/sis_cursor.c index b33befb..13eddc4 100644 --- a/src/sis_cursor.c +++ b/src/sis_cursor.c @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * SiS hardware cursor handling * diff --git a/src/sis_cursor.h b/src/sis_cursor.h index 80518b0..17a1970 100644 --- a/src/sis_cursor.h +++ b/src/sis_cursor.h @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * SiS hardware cursor handling * Definitions diff --git a/src/sis_dac.c b/src/sis_dac.c index eff0900..816d0c8 100644 --- a/src/sis_dac.c +++ b/src/sis_dac.c @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * DAC helper functions (Save/Restore, MemClk, etc) * diff --git a/src/sis_dac.h b/src/sis_dac.h index 765e575..b270675 100644 --- a/src/sis_dac.h +++ b/src/sis_dac.h @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * DAC helper functions (Save/Restore, MemClk, etc) * Definitions and prototypes diff --git a/src/sis_dga.c b/src/sis_dga.c index ad0aee8..d358645 100644 --- a/src/sis_dga.c +++ b/src/sis_dga.c @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * SiS DGA handling * diff --git a/src/sis_dri.c b/src/sis_dri.c index ec8a808..3a476a2 100644 --- a/src/sis_dri.c +++ b/src/sis_dri.c @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg: driver/xf86-video-sis/src/sis_dri.c,v 1.26 2005/10/21 18:40:19 ajax Exp $ */ /* * DRI wrapper for 300 and 315 series * diff --git a/src/sis_dri.h b/src/sis_dri.h index 8834151..399d757 100644 --- a/src/sis_dri.h +++ b/src/sis_dri.h @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * SiS DRI wrapper * diff --git a/src/sis_driver.c b/src/sis_driver.c index 6667185..96fd52d 100644 --- a/src/sis_driver.c +++ b/src/sis_driver.c @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg: driver/xf86-video-sis/src/sis_driver.c,v 1.72 2006/03/09 06:06:25 anholt Exp $ */ /* * SiS driver main code * diff --git a/src/sis_driver.h b/src/sis_driver.h index e912a71..2105ca2 100644 --- a/src/sis_driver.h +++ b/src/sis_driver.h @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * Global data and definitions * diff --git a/src/sis_opt.c b/src/sis_opt.c index ffdd189..69a4c6e 100644 --- a/src/sis_opt.c +++ b/src/sis_opt.c @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * SiS driver option evaluation * diff --git a/src/sis_regs.h b/src/sis_regs.h index 193375e..e914ab6 100644 --- a/src/sis_regs.h +++ b/src/sis_regs.h @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * Register access macros and register definitions * diff --git a/src/sis_setup.c b/src/sis_setup.c index c84a38d..355c5ac 100644 --- a/src/sis_setup.c +++ b/src/sis_setup.c @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * Basic hardware and memory detection * diff --git a/src/sis_shadow.c b/src/sis_shadow.c index 1adc938..d327060 100644 --- a/src/sis_shadow.c +++ b/src/sis_shadow.c @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * Copyright (C) 1999-2004 by The XFree86 Project, Inc. * based on code written by Mark Vojkovich diff --git a/src/sis_utility.c b/src/sis_utility.c index 44d6115..bbc7629 100644 --- a/src/sis_utility.c +++ b/src/sis_utility.c @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * SiS driver utility interface & routines * diff --git a/src/sis_vb.c b/src/sis_vb.c index 78e1a2f..f8a861d 100644 --- a/src/sis_vb.c +++ b/src/sis_vb.c @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * Video bridge detection and configuration for 300, 315 and 330 series * diff --git a/src/sis_vga.c b/src/sis_vga.c index 03cf069..b4cd69d 100644 --- a/src/sis_vga.c +++ b/src/sis_vga.c @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * Mode setup and basic video bridge detection * diff --git a/src/sis_video.c b/src/sis_video.c index fc1cd9d..912a2f5 100644 --- a/src/sis_video.c +++ b/src/sis_video.c @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg: driver/xf86-video-sis/src/sis_video.c,v 1.32 2005/09/23 16:34:04 twini Exp $ */ /* * Xv driver for SiS 300, 315 and 330 series. * diff --git a/src/sis_video.h b/src/sis_video.h index 64a85f9..903a6c4 100644 --- a/src/sis_video.h +++ b/src/sis_video.h @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg: driver/xf86-video-sis/src/sis_video.h,v 1.4 2005/07/04 10:57:08 twini Exp $ */ /* * Xv driver for SiS 300, 315 and 330 series. * diff --git a/src/sis_videostr.h b/src/sis_videostr.h index f6d01eb..a5b556d 100644 --- a/src/sis_videostr.h +++ b/src/sis_videostr.h @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * Xv driver for SiS 300, 315 and 330 series * diff --git a/src/vgatypes.h b/src/vgatypes.h index ca9a189..4be31e4 100644 --- a/src/vgatypes.h +++ b/src/vgatypes.h @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * General type definitions for universal mode switching modules * diff --git a/src/vstruct.h b/src/vstruct.h index 1b3d735..88f7eb6 100644 --- a/src/vstruct.h +++ b/src/vstruct.h @@ -1,5 +1,3 @@ -/* $XFree86$ */ -/* $XdotOrg$ */ /* * General structure definitions for universal mode switching modules * commit 6c7f2d4d2d1e89255007033be0f56a8cbe27397f Author: Matthieu Herrb <[EMAIL PROTECTED]> Date: Sat Mar 8 23:51:57 2008 +0100 Makefile.am: nuke RCS Id diff --git a/man/Makefile.am b/man/Makefile.am index 9ea16e0..d076dc4 100644 --- a/man/Makefile.am +++ b/man/Makefile.am @@ -1,4 +1,3 @@ -# $Id$ # # Copyright 2005 Sun Microsystems, Inc. All rights reserved. # commit be954beff0c1e7942845ff4c055e183784dddad9 Author: Julien Cristau <[EMAIL PROTECTED]> Date: Fri Mar 7 17:09:35 2008 +0100 fixup pciaccess version detect diff --git a/configure.ac b/configure.ac index 6dd9c45..471f676 100644 --- a/configure.ac +++ b/configure.ac @@ -109,7 +109,7 @@ AC_CHECK_DECL(XSERVER_LIBPCIACCESS, CPPFLAGS="$SAVE_CPPFLAGS" if test "x$XSERVER_LIBPCIACCESS" = xyes; then - PKG_CHECK_MODULES([PCIACCESS], [pciaccess >= 0.10.0]) + PKG_CHECK_MODULES([PCIACCESS], [pciaccess >= 0.10]) XORG_CFLAGS="$XORG_CFLAGS $PCIACCESS_CFLAGS" fi AM_CONDITIONAL(XSERVER_LIBPCIACCESS, test "x$XSERVER_LIBPCIACCESS" = xyes) commit f43247d383de0f4753db019482149ff923d884b0 Author: Julien Cristau <[EMAIL PROTECTED]> Date: Wed Feb 27 14:10:17 2008 +0100 Require pciaccess >= 0.10.0 for pci_device_map_range() diff --git a/configure.ac b/configure.ac index 0d99151..6dd9c45 100644 --- a/configure.ac +++ b/configure.ac @@ -109,7 +109,7 @@ AC_CHECK_DECL(XSERVER_LIBPCIACCESS, CPPFLAGS="$SAVE_CPPFLAGS" if test "x$XSERVER_LIBPCIACCESS" = xyes; then - PKG_CHECK_MODULES([PCIACCESS], [pciaccess >= 0.8.0]) + PKG_CHECK_MODULES([PCIACCESS], [pciaccess >= 0.10.0]) XORG_CFLAGS="$XORG_CFLAGS $PCIACCESS_CFLAGS" fi AM_CONDITIONAL(XSERVER_LIBPCIACCESS, test "x$XSERVER_LIBPCIACCESS" = xyes) commit 36ed5521afb524f49bde348775be2bdd78fa0383 Author: Dave Airlie <[EMAIL PROTECTED]> Date: Thu Jan 17 15:49:41 2008 +1000 fix some thinkos in the pciaccess patch, this now works on real hardware diff --git a/src/sis_driver.c b/src/sis_driver.c index 0b3225a..6667185 100644 --- a/src/sis_driver.c +++ b/src/sis_driver.c @@ -7294,7 +7294,7 @@ SISMapMem(ScrnInfoPtr pScrn) pSiS->PciTag, pSiS->IOAddress, (pSiS->mmioSize * 1024)); #else { - void **result = (void **)&pSiSEnt->IOBase; + void **result = (void **)&pSiS->IOBase; int err = pci_device_map_range(pSiS->PciInfo, pSiS->IOAddress, (pSiS->mmioSize * 1024), @@ -7348,7 +7348,7 @@ SISMapMem(ScrnInfoPtr pScrn) pSiS->IOBaseDense = xf86MapPciMem(pScrn->scrnIndex, VIDMEM_MMIO, pSiS->PciTag, pSiS->IOAddress, (pSiS->mmioSize * 1024)); #else - void **result = (void **)&pSiSEnt->IOBaseDense; + void **result = (void **)&pSiS->IOBaseDense; int err = pci_device_map_range(pSiS->PciInfo, pSiS->IOAddress, (pSiS->mmioSize * 1024), @@ -7400,7 +7400,7 @@ SISMapMem(ScrnInfoPtr pScrn) #endif #ifndef XSERVER_LIBPCIACCESS - pSiSEnt->FbBase = pSiSEnt->RealFbBase = + pSiS->FbBase = pSiS->RealFbBase = xf86MapPciMem(pScrn->scrnIndex, VIDMEM_FRAMEBUFFER, pSiS->PciTag, (ULong)pSiS->realFbAddress, pSiS->FbMapSize); @@ -7410,14 +7410,14 @@ SISMapMem(ScrnInfoPtr pScrn) pSiS->FbMapSize, PCI_DEV_MAP_FLAG_WRITABLE | PCI_DEV_MAP_FLAG_WRITE_COMBINE, - (void *)&pSiSEnt->FbBase); + (void *)&pSiS->FbBase); if (err) { xf86DrvMsg (pScrn->scrnIndex, X_ERROR, "Unable to map FB aperture. %s (%d)\n", strerror (err), err); return FALSE; } - pSiSEnt->RealFbBase = pSiSEnt->FbBase; + pSiS->RealFbBase = pSiS->FbBase; #endif pSiS->FbBase += pSiS->dhmOffset; commit 797e6215ad9039ebbab547581c8ab3c143afb14f Author: Dave Airlie <[EMAIL PROTECTED]> Date: Wed Jan 16 17:46:06 2008 +1000 fixup unmap memory diff --git a/src/sis_vga.c b/src/sis_vga.c index 3bb6a90..03cf069 100644 --- a/src/sis_vga.c +++ b/src/sis_vga.c @@ -1738,11 +1738,8 @@ SiSVGAUnmapMem(ScrnInfoPtr pScrn) SISPtr pSiS = SISPTR(pScrn); if(pSiS->VGAMemBase == NULL) return; -#if XSERVER_LIBPCIACCESS - pci_device_unmap_range(pSiS->PciInfo, pSiS->VGAMemBase, pSiS->VGAMapSize); -#else + xf86UnMapVidMem(pScrn->scrnIndex, pSiS->VGAMemBase, pSiS->VGAMapSize); -#endif pSiS->VGAMemBase = NULL; } #endif commit 992f586cbf85d9d99059209afc66e62ee5eb80ce Author: Dave Airlie <[EMAIL PROTECTED]> Date: Wed Jan 16 17:42:44 2008 +1000 use map domain memory with pciinfo diff --git a/src/sis_vga.c b/src/sis_vga.c index 665db08..3bb6a90 100644 --- a/src/sis_vga.c +++ b/src/sis_vga.c @@ -1718,12 +1718,8 @@ SiSVGAMapMem(ScrnInfoPtr pScrn) #if XF86_VERSION_CURRENT >= XF86_VERSION_NUMERIC(4,3,0,0,0) #if XSERVER_LIBPCIACCESS - /* XXX This is cacheable, right? Right? */ - if(pci_device_map_range(pSiS->PciInfo, pSiS->VGAMapPhys, pSiS->VGAMapSize, - PCI_DEV_MAP_FLAG_WRITABLE|PCI_DEV_MAP_FLAG_CACHABLE, - &pSiS->VGAMemBase)) { - return FALSE; - } + pSiS->VGAMemBase = xf86MapDomainMemory(pScrn->scrnIndex, VIDMEM_MMIO_32BIT, + pSiS->PciInfo, pSiS->VGAMapPhys, pSiS->VGAMapSize); #else pSiS->VGAMemBase = xf86MapDomainMemory(pScrn->scrnIndex, VIDMEM_MMIO_32BIT, pSiS->PciTag, pSiS->VGAMapPhys, pSiS->VGAMapSize); commit 0e4dc89b7f00d1453d5c81be36c3d5ea39e3caad Author: Pete Zaitcev <[EMAIL PROTECTED]> Date: Wed Jan 16 13:39:01 2008 +1000 switch vga over to pciaccess diff --git a/src/sis_vga.c b/src/sis_vga.c index 9275f21..665db08 100644 --- a/src/sis_vga.c +++ b/src/sis_vga.c @@ -1717,8 +1717,17 @@ SiSVGAMapMem(ScrnInfoPtr pScrn) if(pSiS->VGAMapPhys == 0) pSiS->VGAMapPhys = 0xA0000; #if XF86_VERSION_CURRENT >= XF86_VERSION_NUMERIC(4,3,0,0,0) +#if XSERVER_LIBPCIACCESS + /* XXX This is cacheable, right? Right? */ + if(pci_device_map_range(pSiS->PciInfo, pSiS->VGAMapPhys, pSiS->VGAMapSize, + PCI_DEV_MAP_FLAG_WRITABLE|PCI_DEV_MAP_FLAG_CACHABLE, + &pSiS->VGAMemBase)) { + return FALSE; + } +#else pSiS->VGAMemBase = xf86MapDomainMemory(pScrn->scrnIndex, VIDMEM_MMIO_32BIT, pSiS->PciTag, pSiS->VGAMapPhys, pSiS->VGAMapSize); +#endif #else pSiS->VGAMemBase = xf86MapVidMem(pScrn->scrnIndex, VIDMEM_MMIO_32BIT, pSiS->VGAMapPhys, pSiS->VGAMapSize); @@ -1733,8 +1742,11 @@ SiSVGAUnmapMem(ScrnInfoPtr pScrn) SISPtr pSiS = SISPTR(pScrn); if(pSiS->VGAMemBase == NULL) return; - +#if XSERVER_LIBPCIACCESS + pci_device_unmap_range(pSiS->PciInfo, pSiS->VGAMemBase, pSiS->VGAMapSize); +#else xf86UnMapVidMem(pScrn->scrnIndex, pSiS->VGAMemBase, pSiS->VGAMapSize); +#endif pSiS->VGAMemBase = NULL; } #endif commit 585e03e6878dd257c694517be9ea231a6b3cfb66 Author: Dave Airlie <[EMAIL PROTECTED]> Date: Wed Jan 16 13:34:58 2008 +1000 switch bios reading over diff --git a/src/sis_driver.c b/src/sis_driver.c index be1f059..0b3225a 100644 --- a/src/sis_driver.c +++ b/src/sis_driver.c @@ -4219,7 +4219,6 @@ SISPreInit(ScrnInfoPtr pScrn, int flags) xf86DrvMsg(pScrn->scrnIndex, X_WARNING, "Could not allocate memory for video BIOS image\n"); } else { - ULong segstart; UShort mypciid = pSiS->Chipset; UShort mypcivendor = (pSiS->ChipFlags & SiSCF_IsXGI) ? PCI_VENDOR_XGI : PCI_VENDOR_SIS; Bool found = FALSE, readpci = FALSE; @@ -4242,7 +4241,15 @@ SISPreInit(ScrnInfoPtr pScrn, int flags) biossize = 0x8000; break; } - +#if XSERVER_LIBPCIACCESS + if(readpci) { + pSiS->PciInfo->rom_size = biossize; + pci_device_read_rom(pSiS->PciInfo, pSiS->BIOS); + if(SISCheckBIOS(pSiS, mypciid, mypcivendor, biossize)) { + found = TRUE; + } + } +#else if(readpci) { xf86ReadPciBIOS(0, pSiS->PciTag, 0, pSiS->BIOS, biossize); if(SISCheckBIOS(pSiS, mypciid, mypcivendor, biossize)) { @@ -4251,6 +4258,7 @@ SISPreInit(ScrnInfoPtr pScrn, int flags) } if(!found) { + ULong segstart; for(segstart = BIOS_BASE; segstart < 0x000f0000; segstart += 0x00001000) { #if XF86_VERSION_CURRENT < XF86_VERSION_NUMERIC(4,2,99,0,0) @@ -4265,7 +4273,7 @@ SISPreInit(ScrnInfoPtr pScrn, int flags) break; } } - +#endif if(found) { UShort romptr = pSiS->BIOS[0x16] | (pSiS->BIOS[0x17] << 8); pSiS->SiS_Pr->VirtualRomBase = pSiS->BIOS; commit ef98280b03318ae39d9b8ba45b13a9e27f520107 Author: Dave Airlie <[EMAIL PROTECTED]> Date: Tue Jan 8 17:01:53 2008 +1000 finish off read/write long conversion diff --git a/src/init.c b/src/init.c index 93a317f..f2b48a0 100644 --- a/src/init.c +++ b/src/init.c @@ -3169,7 +3169,7 @@ SiS_Handle760(struct SiS_Private *SiS_Pr) #ifdef SIS_LINUX_KERNEL somebase = sisfb_read_mio_pci_word(SiS_Pr, 0x74); #else - somebase = pciReadWord(0x00001000, 0x74); + somebase = sis_pci_read_device_u32(2, 0x74); #endif somebase &= 0xffff; diff --git a/src/init301.c b/src/init301.c index ea0861d..2eded9f 100644 --- a/src/init301.c +++ b/src/init301.c @@ -932,7 +932,7 @@ SiS_SetChrontelGPIO(struct SiS_Private *SiS_Pr, unsigned short myvbinfo) #ifdef SIS_LINUX_KERNEL acpibase = sisfb_read_lpc_pci_dword(SiS_Pr, 0x74); #else - acpibase = pciReadLong(0x00000800, 0x74); + acpibase = sis_pci_read_device_u32(1, 0x74); #endif acpibase &= 0xFFFF; if(!acpibase) return; diff --git a/src/sis.h b/src/sis.h index 0176323..0da6e0f 100644 --- a/src/sis.h +++ b/src/sis.h @@ -1575,6 +1575,8 @@ extern int SiS_GetTVyscale(ScrnInfoPtr pScrn); extern int SiS_GetSISCRT1SaturationGain(ScrnInfoPtr pScrn); extern void SiS_SetSISCRT1SaturationGain(ScrnInfoPtr pScrn, int val); +extern unsigned int sis_pci_read_device_u32(int device, int offset); +extern unsigned char sis_pci_read_device_u8(int device, int offset); extern unsigned int sis_pci_read_host_bridge_u32(int offset); extern unsigned char sis_pci_read_host_bridge_u8(int offset); extern void sis_pci_write_host_bridge_u8(int offset, unsigned char value); diff --git a/src/sis_setup.c b/src/sis_setup.c index ea670ef..c84a38d 100644 --- a/src/sis_setup.c +++ b/src/sis_setup.c @@ -101,10 +101,10 @@ static const struct _sis6326mclk { #ifdef XSERVER_LIBPCIACCESS struct pci_device * -sis_host_bridge (void) +sis_get_device (int device) { - static const struct pci_slot_match bridge_match = { - 0, 0, 0, PCI_MATCH_ANY, 0 + struct pci_slot_match bridge_match = { + 0, 0, device, PCI_MATCH_ANY, 0 }; struct pci_device_iterator *slot_iterator; struct pci_device *bridge; @@ -116,9 +116,9 @@ sis_host_bridge (void) } unsigned int -sis_pci_read_host_bridge_u32(int offset) +sis_pci_read_device_u32(int device, int offset) { - struct pci_device host_bridge = sis_host_bridge(); + struct pci_device *host_bridge = sis_get_device(device); unsigned int result; pci_device_cfg_read_u32(host_bridge, &result, offset); @@ -126,9 +126,9 @@ sis_pci_read_host_bridge_u32(int offset) } unsigned char -sis_pci_read_host_bridge_u32(int offset) +sis_pci_read_device_u8(int device, int offset) { - struct pci_device host_bridge = sis_host_bridge(); + struct pci_device *host_bridge = sis_get_device(device); unsigned char result; pci_device_cfg_read_u8(host_bridge, &result, offset); @@ -138,28 +138,30 @@ sis_pci_read_host_bridge_u32(int offset) void sis_pci_write_host_bridge_u32(int offset, unsigned int value) { - struct pci_device host_bridge = sis_host_bridge(); + struct pci_device *host_bridge = sis_get_device(0); pci_device_cfg_write_u32(host_bridge, value, offset); } void sis_pci_write_host_bridge_u8(int offset, unsigned char value) { - struct pci_device host_bridge = sis_host_bridge(); + struct pci_device *host_bridge = sis_get_device(0); pci_device_cfg_write_u8(host_bridge, value, offset); } - + #else unsigned int -sis_pci_read_host_bridge_u32(int offset) +sis_pci_read_device_u32(int device, int offset) { - return pciReadLong(0x00000000, offset); + PCITAG tag = pciTag(0, device, 0); + return pciReadLong(tag, offset); } unsigned char -sis_pci_read_host_bridge_u8(int offset) +sis_pci_read_device_u8(int device, int offset) { - return pciReadByte(0x00000000, offset); + PCITAG tag = pciTag(0, device, 0); + return pciReadByte(tag, offset); } void @@ -176,6 +178,18 @@ sis_pci_write_host_bridge_u8(int offset, unsigned char value) #endif + +unsigned int +sis_pci_read_host_bridge_u32(int offset) +{ + return sis_pci_read_device_u32(0, offset); +} + +unsigned char +sis_pci_read_host_bridge_u8(int offset) +{ + return sis_pci_read_device_u8(0, offset); +} static int sisESSPresent(ScrnInfoPtr pScrn) { @@ -690,7 +704,7 @@ sis550Setup(ScrnInfoPtr pScrn) /* LFB - local framebuffer: PCI reg hold total RAM (but configurable in BIOS) */ /* TODO */ - pciconfig = pciReadByte(0x00000800, 0xcd); + pciconfig = sis_pci_read_device_u8(1, 0xcd); pciconfig = (pciconfig >> 1) & 0x03; i = 0; if(pciconfig == 0x01) i = 32768; commit e2cb9fa30350ee0c08469ad6ea7f34cecf106e33 Author: Dave Airlie <[EMAIL PROTECTED]> Date: Tue Jan 8 16:45:49 2008 +1000 convert all hostbridge read/writes to accessor functions diff --git a/src/init.c b/src/init.c index 9f6bea0..93a317f 100644 --- a/src/init.c +++ b/src/init.c @@ -2505,7 +2505,7 @@ SiS_SetCRT1FIFO_630(struct SiS_Private *SiS_Pr, unsigned short ModeNo, #ifdef SIS_LINUX_KERNEL templ = sisfb_read_nbridge_pci_dword(SiS_Pr, 0x50); #else - templ = pciReadLong(0x00000000, 0x50); + templ = sis_pci_read_host_bridge_u32(0x50); #endif if(SiS_Pr->ChipType == SIS_730) { @@ -2530,8 +2530,8 @@ SiS_SetCRT1FIFO_630(struct SiS_Private *SiS_Pr, unsigned short ModeNo, sisfb_write_nbridge_pci_dword(SiS_Pr, 0x50, templ); templ = sisfb_read_nbridge_pci_dword(SiS_Pr, 0xA0); #else - pciWriteLong(0x00000000, 0x50, templ); - templ = pciReadLong(0x00000000, 0xA0); + sis_pci_write_host_bridge_u32(0x50, templ); + templ = sis_pci_read_host_bridge_u32(0xA0); #endif /* GUI grant timer (PCI config 0xA3) */ @@ -2551,7 +2551,7 @@ SiS_SetCRT1FIFO_630(struct SiS_Private *SiS_Pr, unsigned short ModeNo, #ifdef SIS_LINUX_KERNEL sisfb_write_nbridge_pci_dword(SiS_Pr, 0xA0, templ); #else - pciWriteLong(0x00000000, 0xA0, templ); + sis_pci_write_host_bridge_u32(0xA0, templ); #endif } #endif /* SIS300 */ @@ -3190,8 +3190,8 @@ SiS_Handle760(struct SiS_Private *SiS_Pr) sisfb_write_nbridge_pci_byte(SiS_Pr, 0x7e, temp1); sisfb_write_nbridge_pci_byte(SiS_Pr, 0x8d, temp2); #else - pciWriteByte(0x00000000, 0x7e, temp1); - pciWriteByte(0x00000000, 0x8d, temp2); + sis_pci_write_host_bridge_u8(0x7e, temp1); + sis_pci_write_host_bridge_u8(0x8d, temp2); #endif SiS_SetRegByte((somebase + 0x85), temp3); diff --git a/src/init301.c b/src/init301.c index 161d8de..ea0861d 100644 --- a/src/init301.c +++ b/src/init301.c @@ -5220,8 +5220,8 @@ SiS_SetCRT2FIFO_300(struct SiS_Private *SiS_Pr,unsigned short ModeNo) pci50 = sisfb_read_nbridge_pci_dword(SiS_Pr, 0x50); pciA0 = sisfb_read_nbridge_pci_dword(SiS_Pr, 0xa0); #else - pci50 = pciReadLong(0x00000000, 0x50); - pciA0 = pciReadLong(0x00000000, 0xA0); + pci50 = sis_pci_read_host_bridge_u32(0x50); + pciA0 = sis_pci_read_host_bridge_u32(0xA0); #endif if(SiS_Pr->ChipType == SIS_730) { diff --git a/src/sis.h b/src/sis.h index c9e01f8..0176323 100644 --- a/src/sis.h +++ b/src/sis.h -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]