diff options
author | root <root@rshg054.dnsready.net> | 2012-02-11 23:14:54 +0000 |
---|---|---|
committer | root <root@rshg054.dnsready.net> | 2012-02-11 23:14:54 +0000 |
commit | cfceb92e73d7f6a32494f0ba258b98748af43f34 (patch) | |
tree | 56f71bc4b93aa78486f4e0e0b0c5250ea977f114 /staging | |
parent | 9d1489b877a1fa7c2674cf1f744804db42d93bfc (diff) |
Sat Feb 11 23:14:53 UTC 2012
Diffstat (limited to 'staging')
-rw-r--r-- | staging/kismet/PKGBUILD | 57 | ||||
-rw-r--r-- | staging/kismet/kismet.changelog | 29 | ||||
-rw-r--r-- | staging/kismet/kismet.install | 34 | ||||
-rw-r--r-- | staging/libxi/PKGBUILD | 6 | ||||
-rw-r--r-- | staging/mesa/PKGBUILD | 13 | ||||
-rw-r--r-- | staging/xf86-video-ast/PKGBUILD | 33 | ||||
-rw-r--r-- | staging/xf86-video-ast/ast-0.93.9-vga.patch | 38 | ||||
-rw-r--r-- | staging/xf86-video-ati/PKGBUILD | 31 | ||||
-rw-r--r-- | staging/xf86-video-chips/PKGBUILD | 35 | ||||
-rw-r--r-- | staging/xf86-video-chips/chips-1.2.4-git.patch | 912 | ||||
-rw-r--r-- | staging/xf86-video-nouveau/PKGBUILD | 41 | ||||
-rw-r--r-- | staging/xf86-video-nouveau/xf86-video-nouveau.install | 16 | ||||
-rw-r--r-- | staging/xf86-video-openchrome/PKGBUILD | 31 | ||||
-rw-r--r-- | staging/xorg-server/PKGBUILD | 13 | ||||
-rw-r--r-- | staging/xorg-server/autoconfig-nvidia.patch | 55 |
15 files changed, 1298 insertions, 46 deletions
diff --git a/staging/kismet/PKGBUILD b/staging/kismet/PKGBUILD new file mode 100644 index 000000000..0357b6294 --- /dev/null +++ b/staging/kismet/PKGBUILD @@ -0,0 +1,57 @@ +# $Id: PKGBUILD 149761 2012-02-10 10:39:40Z eric $ +# Maintainer: Angel Velasquez <angvp@archlinux.org> +# Contributor: Jason Chu <jason@archlinux.org> +# Contributor: Juergen Hoetzel <jason@archlinux.org> + +pkgname=kismet +pkgver=2011_03_R2 +_realver="${pkgver//_/-}" +pkgrel=4 +pkgdesc="802.11 layer2 wireless network detector, sniffer, and intrusion detection system" +arch=('i686' 'x86_64') +url="http://www.kismetwireless.net/" +license=('GPL') +depends=('libcap' 'libnl1' 'pcre' 'ncurses' 'libpcap>=1.0.0' 'bluez' 'openssl') # already in core: ('linux-api-headers' 'glibc' 'libusb' 'libusb-compat') +makedepends=() # already in core: ('grep' 'gcc-libs') +optdepends=('gpsd: log coordinates of detected networks' + 'wireshark-cli: provide OUI files used to determine device manufacturer' + 'wireshark-cli: mergecap, to merge multiple capture files' + 'sox: provide the default kismet sound playback binary' + 'festival: text-to-speech support' + 'flite: alternative/lightweight text-to-speech support' + 'mac80211-driver: full rfmon support' + 'ruby: ruby interface') +backup=('etc/kismet.conf' 'etc/kismet_drone.conf') +install=kismet.install +changelog=kismet.changelog +source=("http://www.kismetwireless.net/code/${pkgname}-${_realver}.tar.gz") +md5sums=('8bf077e8111e6dc8c12cadefdf40aadd') + +build() { + cd "${srcdir}/${pkgname}-${_realver}" + + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var + make dep + make + + # Include plugins bundled with kismet + make plugins +} + +package() { + cd "${srcdir}/${pkgname}-${_realver}" + + # Install kismet + make DESTDIR="$pkgdir" install + + # Install plugins + make plugins-install DESTDIR="$pkgdir" + + # the README is very comprehensive, a good idea to include it + install -D -m 644 "${srcdir}/kismet-${_realver}/README" "${pkgdir}/usr/share/kismet/README" + + # Our own suid-install, first half (see kismet.install) + install -o "root" -g "root" -m 4550 kismet_capture "${pkgdir}/usr/bin/" +} diff --git a/staging/kismet/kismet.changelog b/staging/kismet/kismet.changelog new file mode 100644 index 000000000..3078d0625 --- /dev/null +++ b/staging/kismet/kismet.changelog @@ -0,0 +1,29 @@ +2012-02-10 Eric BĂ©langer <eric@archlinux.org> + * Change libnl depends to libnl1 + +2010-05-07 Angel Velasquez <angvp@archlinux.org> + * ChangeLog added + + * Removed old patches from SVN + + * Applied changes from FS#15746 thanks to people who worked on it. + + * Files that are no longer shipped and so should not be backed up: + backup=('etc/ap_manuf' 'etc/client_manuf' 'etc/kismet_ui.conf') + + * No longer needed; gpsmap is deprecated and being replaced with a tile-based + mapper, as of yet incomplete + optdepends=('perl-libwww: fetch maps for gpsmap') + + * Configuration has completely changed, no longer containing + references to either prism2 or wlanng + sed -i 's/prism2/wlanng/g' conf/kismet.conf + + * Ownership of man pages now defaults to "root" if the group "man" does not exist + chown root:root "$pkgdir"/usr/share/man/man{1,5}/* + + * Dependencies no longer needed + depends=('gmp' 'imagemagick' 'dbus' 'libjpeg>=7') + + * Options no longer needed + options=('!makeflags') diff --git a/staging/kismet/kismet.install b/staging/kismet/kismet.install new file mode 100644 index 000000000..0bc806034 --- /dev/null +++ b/staging/kismet/kismet.install @@ -0,0 +1,34 @@ +## arg 1: the new package version +post_install() { + post_upgrade + + cat << EOP + If you have not done so already, read the README file and the FAQ file. + You MUST edit /etc/kismet.conf and configure Kismet for your system, or + it will NOT run properly!" + + Kismet has been installed with a SUID ROOT CAPTURE HELPER executeable by + users in the group ' kismet '. This WILL ALLOW USERS IN THIS GROUP + TO ALTER YOUR NETWORK INTERACE STATES, but is more secure than running + all of Kismet as root. ONLY users in this group will be able to + run Kismet and capture from physical network devices. +EOP +} + +## arg 1: the new package version +## arg 2: the old package version +post_upgrade() { + # Add the group needed to use the limited-functionality binary "kismet_capture" + # Change group ownership of "kismet_capture" to this new group + # Preserve the file mode bits of "kismet_capture" + getent group "kismet" &>/dev/null || /usr/sbin/groupadd -r -g 315 kismet &>/dev/null + chown root:kismet "/usr/bin/kismet_capture" + chmod 4550 "/usr/bin/kismet_capture" +} + +## arg 1: the old package version +post_remove() { + getent group "kismet" &>/dev/null && /usr/sbin/groupdel kismet &>/dev/null +} + +# vim:set ts=2 sw=2 et: diff --git a/staging/libxi/PKGBUILD b/staging/libxi/PKGBUILD index d0da35276..693a559c9 100644 --- a/staging/libxi/PKGBUILD +++ b/staging/libxi/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 149439 2012-02-07 18:06:11Z andyrtr $ +# $Id: PKGBUILD 149782 2012-02-10 20:18:57Z andyrtr $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=libxi -pkgver=1.5.99.2 +pkgver=1.5.99.3 pkgrel=1 pkgdesc="X11 Input extension library" arch=('i686' 'x86_64') @@ -12,7 +12,7 @@ makedepends=('pkgconfig' 'xorg-util-macros') options=(!libtool) license=('custom') source=(${url}/releases/individual/lib/libXi-${pkgver}.tar.bz2) -sha1sums=('7c1be5426297889daac91c0d669200ea3ec93582') +sha1sums=('55de70d18b20341f307b80da035400ed0467c920') build() { cd "${srcdir}/libXi-${pkgver}" diff --git a/staging/mesa/PKGBUILD b/staging/mesa/PKGBUILD index 9f3d5d830..b19a25a48 100644 --- a/staging/mesa/PKGBUILD +++ b/staging/mesa/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 148567 2012-02-03 17:43:53Z andyrtr $ +# $Id: PKGBUILD 149788 2012-02-10 21:07:50Z andyrtr $ # Maintainer: Jan de Groot <jgc@archlinux.org> # Maintainer: Andreas Radke <andyrtr@archlinux.org> @@ -15,7 +15,7 @@ if [ "${_git}" = "true" ]; then pkgver=7.10.99.git20110709 #pkgver=7.11 else - pkgver=8.0rc2 + pkgver=8.0 fi pkgrel=1 arch=('i686' 'x86_64') @@ -29,13 +29,13 @@ if [ "${_git}" = "true" ]; then #source=(${source[@]} 'ftp://ftp.archlinux.org/other/mesa/mesa-1ae00c5960af83bea9545a18a1754bad83d5cbd0.tar.bz2') source=(${source[@]} "MesaLib-git${_gitdate}.zip"::"http://cgit.freedesktop.org/mesa/mesa/snapshot/mesa-ef9f16f6322a89fb699fbe3da868b10f9acaef98.tar.bz2") else - #source=(${source[@]} "ftp://ftp.freedesktop.org/pub/mesa/${pkgver}/MesaLib-${pkgver}.tar.bz2" - source=(${source[@]} "ftp://ftp.freedesktop.org/pub/mesa/8.0/MesaLib-8.0-rc2.tar.bz2" + source=(${source[@]} "ftp://ftp.freedesktop.org/pub/mesa/${pkgver}/MesaLib-${pkgver}.tar.bz2" + #source=(${source[@]} "ftp://ftp.freedesktop.org/pub/mesa/8.0/MesaLib-8.0-rc2.tar.bz2" #source=(${source[@]} "MesaLib-git${_gitdate}.zip"::"http://cgit.freedesktop.org/mesa/mesa/snapshot/mesa-4464ee1a9aa3745109cee23531e3fb2323234d07.tar.bz2" ) fi md5sums=('5c65a0fe315dd347e09b1f2826a1df5a' - '8fd3c3315b7b394b1225aaab5301f8dd') + '1a5668fe72651a670611164cefc703b2') build() { cd ${srcdir}/?esa-* @@ -77,8 +77,9 @@ fi } package_libgl() { - depends=('libdrm>=2.4.26' 'libxxf86vm>=1.1.1' 'libxdamage>=1.1.3' 'expat>=2.0.1' 'libglapi' 'gcc-libs') + depends=('libdrm>=2.4.31' 'libxxf86vm>=1.1.1' 'libxdamage>=1.1.3' 'expat>=2.0.1' 'libglapi' 'gcc-libs') pkgdesc="Mesa 3-D graphics library and DRI software rasterizer" + replaces=('unichrome-dri' 'mach64-dri' 'mga-dri' 'r128-dri' 'savage-dri' 'sis-dri' 'tdfx-dri') cd ${srcdir}/?esa-* install -m755 -d "${pkgdir}/usr/lib" diff --git a/staging/xf86-video-ast/PKGBUILD b/staging/xf86-video-ast/PKGBUILD new file mode 100644 index 000000000..ace558327 --- /dev/null +++ b/staging/xf86-video-ast/PKGBUILD @@ -0,0 +1,33 @@ +# $Id: PKGBUILD 149790 2012-02-10 21:24:59Z andyrtr $ +# Maintainer: Jan de Groot <jgc@archlinux.org> + +pkgname=xf86-video-ast +pkgver=0.93.9 +pkgrel=2 +pkgdesc="X.org ASPEED AST Graphics video driver" +arch=(i686 x86_64) +url="http://xorg.freedesktop.org/" +license=('custom') +depends=('glibc') +makedepends=('xorg-server-devel>=1.11.99.902') +conflicts=('xorg-server<1.11.99.902') +options=('!libtool') +groups=('xorg-drivers' 'xorg') +source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2 + ast-0.93.9-vga.patch) +md5sums=('e25c6a55e9d07cc6054d6affc1231296' + '9aa9ea4c568b6563389fa634cb0f7cf0') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + patch -Np1 -i ${srcdir}/ast-0.93.9-vga.patch + ./configure --prefix=/usr + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" +} diff --git a/staging/xf86-video-ast/ast-0.93.9-vga.patch b/staging/xf86-video-ast/ast-0.93.9-vga.patch new file mode 100644 index 000000000..e05a78f56 --- /dev/null +++ b/staging/xf86-video-ast/ast-0.93.9-vga.patch @@ -0,0 +1,38 @@ +From 4a7eda24050b42072c77d527257609e743e8dc78 Mon Sep 17 00:00:00 2001 +From: Adam Jackson <ajax@redhat.com> +Date: Wed, 16 Nov 2011 20:09:40 +0000 +Subject: Adapt to domain changes in videoabi 12 + +This is a blind change, I don't have this hardware handy to test with. +It probably wants the same new API that tdfx wants. + +Signed-off-by: Adam Jackson <ajax@redhat.com> +--- +diff --git a/src/ast_driver.c b/src/ast_driver.c +index bd3d338..128538f 100644 +--- a/src/ast_driver.c ++++ b/src/ast_driver.c +@@ -498,11 +498,20 @@ ASTPreInit(ScrnInfoPtr pScrn, int flags) + (pScrn->chipset != NULL) ? pScrn->chipset : "Unknown ast"); + + /* Resource Allocation */ ++#if ABI_VIDEODRV_VERSION < 12 + pAST->IODBase = pScrn->domainIOBase; ++#else ++ pAST->IODBase = 0; ++#endif + /* "Patch" the PIOOffset inside vgaHW in order to force + * the vgaHW module to use our relocated i/o ports. + */ +- VGAHWPTR(pScrn)->PIOOffset = pAST->PIOOffset = pAST->IODBase + PCI_REGION_BASE(pAST->PciInfo, 2, REGION_IO) - 0x380; ++ ++#if ABI_VIDEODRV_VERSION < 12 ++ VGAHWPTR(pScrn)->PIOOffset = /* ... */ ++#endif ++ pAST->PIOOffset = ++ pAST->IODBase + PCI_REGION_BASE(pAST->PciInfo, 2, REGION_IO) - 0x380; + + pAST->RelocateIO = (IOADDRESS)(PCI_REGION_BASE(pAST->PciInfo, 2, REGION_IO) + pAST->IODBase); + +-- +cgit v0.9.0.2-2-gbebe diff --git a/staging/xf86-video-ati/PKGBUILD b/staging/xf86-video-ati/PKGBUILD new file mode 100644 index 000000000..028b977ac --- /dev/null +++ b/staging/xf86-video-ati/PKGBUILD @@ -0,0 +1,31 @@ +# $Id: PKGBUILD 149792 2012-02-10 21:29:58Z andyrtr $ +# Maintainer: Jan de Groot <jgc@archlinux.org> +# Contributor: Alexander Baldeck <alexander@archlinux.org> + +pkgname=xf86-video-ati +pkgver=6.14.3 +pkgrel=2 +pkgdesc="X.org ati video driver" +arch=('i686' 'x86_64') +url="http://xorg.freedesktop.org/" +license=('custom') +depends=(libpciaccess libdrm udev pixman ati-dri) +makedepends=('xorg-server-devel>=1.11.99.902' 'libdrm' 'xf86driproto' 'mesa' 'glproto') +conflicts=('xorg-server<1.11.99.902') +groups=('xorg-drivers' 'xorg') +options=('!libtool') +source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2) +sha1sums=('db635e2e2858d5db90362f546ac0adad85474bad') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + ./configure --prefix=/usr --enable-dri + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make "DESTDIR=${pkgdir}" install + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" +} diff --git a/staging/xf86-video-chips/PKGBUILD b/staging/xf86-video-chips/PKGBUILD new file mode 100644 index 000000000..971900114 --- /dev/null +++ b/staging/xf86-video-chips/PKGBUILD @@ -0,0 +1,35 @@ +# $Id: PKGBUILD 149794 2012-02-10 21:39:35Z andyrtr $ +# Maintainer: Jan de Groot <jgc@archlinux.org> +# Contributor: Alexander Baldeck <alexander@archlinux.org> + +pkgname=xf86-video-chips +pkgver=1.2.4 +pkgrel=4 +pkgdesc="X.org Chips and Technologies video driver" +arch=(i686 x86_64) +url="http://xorg.freedesktop.org/" +license=('custom') +depends=(glibc) +makedepends=('xorg-server-devel>=1.11.99.902') +conflicts=('xorg-server<1.11.99.902') +groups=('xorg-drivers' 'xorg') +options=('!libtool') +source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2 + chips-1.2.4-git.patch) +sha1sums=('71f474335d05f93b2451a7a0750c4409669641a4' + 'b13ff000e3f6f06c1a7fd55e9e0ad6078f1b4e5b') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + patch -Np1 -i ${srcdir}/chips-1.2.4-git.patch + ./configure --prefix=/usr + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" +} diff --git a/staging/xf86-video-chips/chips-1.2.4-git.patch b/staging/xf86-video-chips/chips-1.2.4-git.patch new file mode 100644 index 000000000..9d8e856a3 --- /dev/null +++ b/staging/xf86-video-chips/chips-1.2.4-git.patch @@ -0,0 +1,912 @@ +diff --git a/configure.ac b/configure.ac +index 225e516..c0ed508 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -44,9 +44,6 @@ XORG_DEFAULT_OPTIONS + AC_DISABLE_STATIC + AC_PROG_LIBTOOL + +-# Checks for programs. +-AM_PROG_CC_C_O +- + AH_TOP([#include "xorg-server.h"]) + + # Define a configure option for an alternate module directory +diff --git a/man/chips.man b/man/chips.man +index 740af38..0c022ee 100644 +--- a/man/chips.man ++++ b/man/chips.man +@@ -165,9 +165,6 @@ Force the use of memory mapped IO where it can be used. Default: off + Force driver to leave centering and stretching registers alone. This + can fix some laptop suspend/resume problems. Default: off + .TP +-.BI "Option \*qOverlay\*q" +-Enable 8+24 overlay mode. Only appropriate for depth 24. Default: off. +-.TP + .BI "Option \*qColorKey\*q \*q" integer \*q + Set the colormap index used for the transparency key for the depth 8 plane + when operating in 8+16 overlay mode. The value must be in the range +diff --git a/src/ct_accel.c b/src/ct_accel.c +index 3920b0a..4b5776a 100644 +--- a/src/ct_accel.c ++++ b/src/ct_accel.c +@@ -428,19 +428,7 @@ chips_imagewrite: + infoPtr->ImageWriteFlags |= NO_PLANEMASK; + #endif + +- +-#ifdef CHIPS_HIQV +- if (XAAInit(pScreen, infoPtr)) { +- if (cPtr->Flags & ChipsOverlay8plus16) +- return(XAAInitDualFramebufferOverlay(pScreen, +- CTNAME(DepthChange))); +- else +- return TRUE; +- } else +- return FALSE; +-#else + return(XAAInit(pScreen, infoPtr)); +-#endif + } + + #ifdef CHIPS_HIQV +@@ -1243,11 +1231,6 @@ CTNAME(SubsequentScreenToScreenColorExpandFill)(ScrnInfoPtr pScrn, + #endif + w *= cAcl->BytesPerPixel; + ctBLTWAIT; +-#ifdef CHIPS_HIQV +- if ((y >= pScrn->virtualY) && (cPtr->Flags & ChipsOverlay8plus16) && +- (pScrn->depth == 8)) +- ctSETPITCH(cAcl->PitchInBytes << 1, cAcl->PitchInBytes); +-#endif + ctSETSRCADDR(srcaddr); + ctSETDSTADDR(destaddr); + #ifdef CHIPS_HIQV +@@ -1271,10 +1254,6 @@ CTNAME(SetupForColor8x8PatternFill)(ScrnInfoPtr pScrn, int patx, int paty, + patternaddr = (paty * pScrn->displayWidth + + (patx & ~0x3F)) * cAcl->BytesPerPixel; + cAcl->patternyrot = (patx & 0x3F) >> 3; +-#ifdef CHIPS_HIQV +- if (cPtr->Flags & ChipsOverlay8plus16) +- patternaddr += cPtr->FbOffset16; +-#endif + + ctBLTWAIT; + ctSETPATSRCADDR(patternaddr); +@@ -1338,10 +1317,7 @@ CTNAME(SetupForMono8x8PatternFill)(ScrnInfoPtr pScrn, int patx, int paty, + + #ifdef CHIPS_HIQV + patternaddr = paty * pScrn->displayWidth + patx; +- if (cPtr->Flags & ChipsOverlay8plus16) +- patternaddr = patternaddr * 2 + cPtr->FbOffset16; +- else +- patternaddr *= cAcl->BytesPerPixel; ++ patternaddr *= cAcl->BytesPerPixel; + #else + patternaddr = (paty * pScrn->displayWidth + patx) * cAcl->BytesPerPixel; + #endif +@@ -1593,10 +1569,7 @@ CTNAME(WritePixmap)(ScrnInfoPtr pScrn, int x, int y, int w, int h, + dwords = (((skipleft + bytesPerLine + 0x7) & ~0x7)) >> 2; + destaddr = (y * pScrn->displayWidth + x) * (bpp >> 3); + destpitch = pScrn->displayWidth * (bpp >> 3); +- if ((y >= pScrn->virtualY) && (cPtr->Flags & ChipsOverlay8plus16)) +- destaddr += cPtr->FbOffset16; +- else +- destaddr += cAcl->FbOffset; ++ destaddr += cAcl->FbOffset; + + ctBLTWAIT; + +@@ -1681,10 +1654,7 @@ CTNAME(WritePixmap)(ScrnInfoPtr pScrn, int x, int y, int w, int h, + y++; + + destaddr = (y * pScrn->displayWidth + x) * (bpp >> 3); +- if ((y >= pScrn->virtualY) && (cPtr->Flags & ChipsOverlay8plus16)) +- destaddr += cPtr->FbOffset16; +- else +- destaddr += cAcl->FbOffset; ++ destaddr += cAcl->FbOffset; + + ctBLTWAIT; + ctSETDSTADDR(destaddr); +@@ -1717,10 +1687,7 @@ CTNAME(ReadPixmap)(ScrnInfoPtr pScrn, int x, int y, int w, int h, + dwords = (((bytesPerLine + 0x7) & ~0x7)) >> 2; + srcaddr = (y * pScrn->displayWidth + x) * (bpp >> 3); + srcpitch = pScrn->displayWidth * (bpp >> 3); +- if ((y >= pScrn->virtualY) && (cPtr->Flags & ChipsOverlay8plus16)) +- srcaddr += cPtr->FbOffset16; +- else +- srcaddr += cAcl->FbOffset; ++ srcaddr += cAcl->FbOffset; + + ctBLTWAIT; + ctSETROP( ctDSTSYSTEM | ctLEFT2RIGHT | ctTOP2BOTTOM | +@@ -1755,10 +1722,7 @@ CTNAME(ReadPixmap)(ScrnInfoPtr pScrn, int x, int y, int w, int h, + dst += dstwidth; + y++; + srcaddr = (y * pScrn->displayWidth + x) * (bpp >> 3); +- if ((y >= pScrn->virtualY) && (cPtr->Flags & ChipsOverlay8plus16)) +- srcaddr += cPtr->FbOffset16; +- else +- srcaddr += cAcl->FbOffset; ++ srcaddr += cAcl->FbOffset; + ctBLTWAIT; + ctSETSRCADDR(srcaddr); + ctSETHEIGHTWIDTHGO(h, bytesPerLine); +diff --git a/src/ct_driver.c b/src/ct_driver.c +index 6624b79..a2e5c94 100644 +--- a/src/ct_driver.c ++++ b/src/ct_driver.c +@@ -949,7 +949,7 @@ CHIPSProbe(DriverPtr drv, int flags) + } + + } +- xfree(usedChips); ++ free(usedChips); + } + } + +@@ -981,12 +981,12 @@ CHIPSProbe(DriverPtr drv, int flags) + pScrn->ValidMode = CHIPSValidMode; + foundScreen = TRUE; + } +- xfree(usedChips); ++ free(usedChips); + } + } + #endif + +- xfree(devSections); ++ free(devSections); + return foundScreen; + } + #endif +@@ -1446,7 +1446,12 @@ chipsPreInitHiQV(ScrnInfoPtr pScrn, int flags) + + hwp = VGAHWPTR(pScrn); + vgaHWGetIOBase(hwp); ++#if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 12 + cPtr->PIOBase = hwp->PIOOffset; ++#else ++ cPtr->PIOBase = 0; ++#endif ++ + /* + * Must allow ensure that storage for the 2nd set of vga registers is + * allocated for dual channel cards +@@ -1639,55 +1644,15 @@ chipsPreInitHiQV(ScrnInfoPtr pScrn, int flags) + } + } + +- if ((s = xf86GetOptValString(cPtr->Options, OPTION_OVERLAY))) { +- if (!*s || !xf86NameCmp(s, "8,16") || !xf86NameCmp(s, "16,8")) { +- if (pScrn->bitsPerPixel == 16) { +- if (cPtr->Flags & ChipsLinearSupport) { +- cPtr->Flags |= ChipsOverlay8plus16; +- if(!xf86GetOptValInteger( +- cPtr->Options, OPTION_COLOR_KEY, &(pScrn->colorKey))) +- pScrn->colorKey = TRANSPARENCY_KEY; +- pScrn->overlayFlags = OVERLAY_8_16_DUALFB; +- xf86DrvMsg(pScrn->scrnIndex, X_CONFIG, +- "PseudoColor overlay enabled.\n"); +- if (!xf86IsOptionSet(cPtr->Options, OPTION_LCD_STRETCH)) +- xf86DrvMsg(pScrn->scrnIndex, X_WARNING, +- " - Forcing option \"Stretch\" \"ON\".\n"); +- if (!xf86IsOptionSet(cPtr->Options, OPTION_LCD_CENTER)) +- xf86DrvMsg(pScrn->scrnIndex, X_WARNING, +- " - Forcing option \"LcdCenter\" \"OFF\".\n"); +- if (cPtr->Flags & ChipsShadowFB) { +- xf86DrvMsg(pScrn->scrnIndex, X_WARNING, +- " - Disabling \"Shadow Framebuffer\".\n"); +- xf86DrvMsg(pScrn->scrnIndex, X_WARNING, +- " Not support with option \"8Plus16\".\n"); +- cPtr->Flags &= ~ChipsShadowFB; +- cPtr->Rotate = 0; +- } +- } else { +- xf86DrvMsg(pScrn->scrnIndex, X_WARNING, "Option \"Overlay\" ignored. Not supported without linear addressing\n"); +- } +- } else { +- xf86DrvMsg(pScrn->scrnIndex, X_WARNING, +- "Option \"Overlay\" is not supported in this configuration\n"); +- } +- } else { +- xf86DrvMsg(pScrn->scrnIndex, X_WARNING, +- "\"%s\" is not a valid value for Option \"Overlay\"\n", s); +- } +- } +- +- if (!(cPtr->Flags & ChipsOverlay8plus16)) { +- if(xf86GetOptValInteger(cPtr->Options, OPTION_VIDEO_KEY, +- &(cPtr->videoKey))) { +- xf86DrvMsg(pScrn->scrnIndex, X_CONFIG, "video key set to 0x%x\n", ++ if(xf86GetOptValInteger(cPtr->Options, OPTION_VIDEO_KEY, ++ &(cPtr->videoKey))) { ++ xf86DrvMsg(pScrn->scrnIndex, X_CONFIG, "video key set to 0x%x\n", + cPtr->videoKey); +- } else { +- cPtr->videoKey = (1 << pScrn->offset.red) | ++ } else { ++ cPtr->videoKey = (1 << pScrn->offset.red) | + (1 << pScrn->offset.green) | + (((pScrn->mask.blue >> pScrn->offset.blue) - 1) + << pScrn->offset.blue); +- } + } + + if (cPtr->Flags & ChipsShadowFB) { +@@ -2335,28 +2300,16 @@ chipsPreInitHiQV(ScrnInfoPtr pScrn, int flags) + /* and 32bits on the others. Thus multiply by a suitable factor */ + if (cPtr->Flags & Chips64BitMemory) { + if (cPtr->FrameBufferSize && (cPtr->PanelType & ChipsLCD)) +- if (cPtr->Flags & ChipsOverlay8plus16 ) +- cPtr->MaxClock = min(cPtr->MaxClock, MemClk->Clk * 8 * 0.7 / 4); +- else + cPtr->MaxClock = min(cPtr->MaxClock, + MemClk->Clk * 8 * 0.7 / (bytesPerPixel + 1)); + else +- if (cPtr->Flags & ChipsOverlay8plus16) +- cPtr->MaxClock = min(cPtr->MaxClock, MemClk->Clk * 8 * 0.7 / 3); +- else + cPtr->MaxClock = min(cPtr->MaxClock, + MemClk->Clk * 8 * 0.7 / bytesPerPixel); + } else { + if (cPtr->FrameBufferSize && (cPtr->PanelType & ChipsLCD)) +- if (cPtr->Flags & ChipsOverlay8plus16 ) +- cPtr->MaxClock = min(cPtr->MaxClock, MemClk->Clk * 4 * 0.7 / 4); +- else + cPtr->MaxClock = min(cPtr->MaxClock, + MemClk->Clk * 4 * 0.7 / (bytesPerPixel + 1)); + else +- if (cPtr->Flags & ChipsOverlay8plus16) +- cPtr->MaxClock = min(cPtr->MaxClock, MemClk->Clk * 4 * 0.7 / 3); +- else + cPtr->MaxClock = min(cPtr->MaxClock, + MemClk->Clk * 4 * 0.7 / bytesPerPixel); + } +@@ -3736,8 +3689,7 @@ CHIPSEnterVT(int scrnIndex, int flags) + /* Should we re-save the text mode on each VT enter? */ + if(!chipsModeInit(pScrn, pScrn->currentMode)) + return FALSE; +- if ((!(cPtr->Flags & ChipsOverlay8plus16)) +- && (cPtr->Flags & ChipsVideoSupport) ++ if ((cPtr->Flags & ChipsVideoSupport) + && (cPtr->Flags & ChipsLinearSupport)) + CHIPSResetVideo(pScrn); + +@@ -3788,8 +3740,7 @@ chipsLoadPalette(ScrnInfoPtr pScrn, int numColors, int *indices, LOCO *colors, + int i, index, shift ; + CHIPSEntPtr cPtrEnt; + +- shift = ((pScrn->depth == 15) && +- (!(cPtr->Flags & ChipsOverlay8plus16))) ? 3 : 0; ++ shift = (pScrn->depth == 15) ? 3 : 0; + + if (cPtr->UseDualChannel) { + cPtrEnt = xf86GetEntityPrivate(pScrn->entityList[0], +@@ -3895,18 +3846,6 @@ chipsLoadPalette16(ScrnInfoPtr pScrn, int numColors, int *indices, + hwp->disablePalette(hwp); + } + +-static Bool +-cfb8_16ScreenInit(ScreenPtr pScreen, pointer pbits16, pointer pbits8, +- int xsize, int ysize, int dpix, int dpiy, +- int width16, int width8) +-{ +- return +- (fbOverlaySetupScreen(pScreen, pbits16, pbits8, xsize, ysize, +- dpix, dpiy, width16, width8, 16, 8) && +- fbOverlayFinishScreenInit(pScreen, pbits16, pbits8, xsize, ysize, +- dpix, dpiy, width16, width8, 16, 8, 16, 8)); +-} +- + /* Mandatory */ + static Bool + CHIPSScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) +@@ -3947,22 +3886,6 @@ CHIPSScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) + if (!chipsMapMem(pScrn)) + return FALSE; + +- /* Setup a pointer to the overlay if needed */ +- if (cPtr->Flags & ChipsOverlay8plus16) { +- cPtr->FbOffset16 = pScrn->displayWidth * pScrn->virtualY; +- cPtr->FbSize16 = (pScrn->displayWidth << 1) * pScrn->virtualY; +- if (cPtr->FbSize16 > (cPtr->FbMapSize - cPtr->FrameBufferSize)) { +- xf86DrvMsg(pScrn->scrnIndex, X_CONFIG, +- "Too little memory for overlay. Disabling.\n"); +- cPtr->Flags &= ~ChipsOverlay8plus16; +- } +- if ((pScrn->displayWidth > 1024) || (pScrn->virtualY > 1024)) { +- xf86DrvMsg(pScrn->scrnIndex, X_CONFIG, +- "Max overlay Width/Height 1024 pixels. Disabling.\n"); +- cPtr->Flags &= ~ChipsOverlay8plus16; +- } +- } +- + /* Setup the MMIO register access functions if need */ + if (cPtr->UseFullMMIO && cPtr->MMIOBaseVGA) { + CHIPSSetMmioExtFuncs(cPtr); +@@ -4035,18 +3958,10 @@ CHIPSScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) + miClearVisualTypes(); + + /* Setup the visuals we support. */ +- if ((pScrn->bitsPerPixel == 16) && (cPtr->Flags & ChipsOverlay8plus16)){ +- if (!miSetVisualTypes(8, PseudoColorMask | GrayScaleMask, +- pScrn->rgbBits, PseudoColor)) +- return FALSE; +- if (!miSetVisualTypes(16, TrueColorMask, pScrn->rgbBits, TrueColor)) +- return FALSE; +- } else { +- if (!miSetVisualTypes(pScrn->depth, ++ if (!miSetVisualTypes(pScrn->depth, + miGetDefaultVisualMask(pScrn->depth), + pScrn->rgbBits, pScrn->defaultVisual)) +- return FALSE; +- } ++ return FALSE; + miSetPixmapDepths (); + + /* +@@ -4090,13 +4005,6 @@ CHIPSScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) + break; + #endif + case 16: +- if (cPtr->Flags & ChipsOverlay8plus16) { +- ret = cfb8_16ScreenInit(pScreen, (unsigned char *)FBStart + +- cPtr->FbOffset16, FBStart, width, +- height, pScrn->xDpi, pScrn->yDpi, +- displayWidth, displayWidth); +- break; +- } + default: + ret = fbScreenInit(pScreen, FBStart, + width,height, +@@ -4223,7 +4131,7 @@ CHIPSScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) + } + if (!miInitializeBanking(pScreen, pScrn->virtualX, pScrn->virtualY, + pScrn->displayWidth, pBankInfo)) { +- xfree(pBankInfo); ++ free(pBankInfo); + pBankInfo = NULL; + return FALSE; + } +@@ -4244,9 +4152,6 @@ CHIPSScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) + if (pScrn->bitsPerPixel < 8) + freespace = allocatebase - pScrn->displayWidth * + pScrn->virtualY / 2; +- else if ((pScrn->bitsPerPixel == 16) && (cPtr->Flags & ChipsOverlay8plus16)) +- freespace = allocatebase - pScrn->displayWidth * +- pScrn->virtualY - cPtr->FbSize16; + else + freespace = allocatebase - pScrn->displayWidth * + pScrn->virtualY * (pScrn->bitsPerPixel >> 3); +@@ -4369,9 +4274,7 @@ CHIPSScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) + AvailFBArea.y2 = cAcl->CacheEnd / + (pScrn->displayWidth * (pScrn->bitsPerPixel >> 3)); + +- if (!(cPtr->Flags & ChipsOverlay8plus16)) { +- xf86InitFBManager(pScreen, &AvailFBArea); +- } ++ xf86InitFBManager(pScreen, &AvailFBArea); + } + if (cPtr->Flags & ChipsAccelSupport) { + if (IS_HiQV(cPtr)) { +@@ -4425,16 +4328,10 @@ CHIPSScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) + if (!miCreateDefColormap(pScreen)) + return FALSE; + +- if ((cPtr->Flags & ChipsOverlay8plus16) && (pScrn->bitsPerPixel == 16)) { +- if(!xf86HandleColormaps(pScreen, 256, pScrn->rgbBits, chipsLoadPalette, +- NULL, CMAP_RELOAD_ON_MODE_SWITCH)) +- return FALSE; +- } else { +- if(!xf86HandleColormaps(pScreen, 256, pScrn->rgbBits, ++ if(!xf86HandleColormaps(pScreen, 256, pScrn->rgbBits, + (pScrn->depth == 16 ? chipsLoadPalette16 : chipsLoadPalette), + NULL, CMAP_RELOAD_ON_MODE_SWITCH | CMAP_PALETTED_TRUECOLOR)) +- return FALSE; +- } ++ return FALSE; + + #ifndef XSERVER_LIBPCIACCESS + racflag = RAC_COLORMAP; +@@ -4448,8 +4345,7 @@ CHIPSScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) + xf86SetSilkenMouse(pScreen); + #endif + +- if ((!(cPtr->Flags & ChipsOverlay8plus16)) +- && (cPtr->Flags & ChipsVideoSupport) ++ if ((cPtr->Flags & ChipsVideoSupport) + && (cPtr->Flags & ChipsLinearSupport)) { + CHIPSInitVideo(pScreen); + } +@@ -4522,10 +4418,7 @@ CHIPSAdjustFrame(int scrnIndex, int x, int y, int flags) + Base >>= 3; + break; + case 16: +- if (!(cPtr->Flags & ChipsOverlay8plus16)) +- Base >>= 1; +- else +- Base >>= 2; ++ Base >>= 1; + break; + case 24: + if (!IS_HiQV(cPtr)) +@@ -4581,14 +4474,6 @@ CHIPSAdjustFrame(int scrnIndex, int x, int y, int flags) + cPtr->writeMSS(cPtr, hwp, MSS); + } + +- if (cPtr->Flags & ChipsOverlay8plus16) { +- Base = (Base << 3) & ~(unsigned long)0xF; +- +- cPtr->writeMR(cPtr, 0x22, (cPtr->FbOffset16 + Base) & 0xF8); +- cPtr->writeMR(cPtr, 0x23, ((cPtr->FbOffset16 + Base) >> 8) & 0xFF); +- cPtr->writeMR(cPtr, 0x24, ((cPtr->FbOffset16 + Base) >> 16) & 0xFF); +- } +- + } + + /* Mandatory */ +@@ -4652,13 +4537,6 @@ CHIPSValidMode(int scrnIndex, DisplayModePtr mode, Bool verbose, int flags) + ScrnInfoPtr pScrn = xf86Screens[scrnIndex]; + CHIPSPtr cPtr = CHIPSPTR(pScrn); + +- if (flags & MODECHECK_FINAL) { +- /* Don't subtract FrambufferSize here as it should be subtracted already */ +- if ((cPtr->Flags & ChipsOverlay8plus16) +- && ((pScrn->videoRam<<10) - pScrn->displayWidth * 3 * pScrn->virtualY +- < 0)) +- return MODE_MEM; +- } + /* The tests here need to be expanded */ + if ((mode->Flags & V_INTERLACE) && (cPtr->PanelType & ChipsLCD)) + return MODE_NO_INTERLACE; +@@ -5544,12 +5422,7 @@ chipsModeInitHiQV(ScrnInfoPtr pScrn, DisplayModePtr mode) + } else { + ChipsStd->Attribute[0x10] = 0x01; /* mode */ + } +- if ((pScrn->bitsPerPixel == 16) && (cPtr->Flags & ChipsOverlay8plus16)) { +- /* Make sure that the overlay isn't visible in the overscan region */ +- if (ChipsStd->Attribute[0x11] == pScrn->colorKey) +- ChipsStd->Attribute[0x11] = pScrn->colorKey - 1; +- } else +- ChipsStd->Attribute[0x11] = 0x00; /* overscan (border) color */ ++ ChipsStd->Attribute[0x11] = 0x00; /* overscan (border) color */ + ChipsStd->Attribute[0x12] = 0x0F; /* enable all color planes */ + ChipsStd->Attribute[0x13] = 0x00; /* horiz pixel panning 0 */ + +@@ -5558,8 +5431,7 @@ chipsModeInitHiQV(ScrnInfoPtr pScrn, DisplayModePtr mode) + /* set virtual screen width */ + tmp = pScrn->displayWidth >> 3; + if (pScrn->bitsPerPixel == 16) { +- if (!(cPtr->Flags & ChipsOverlay8plus16)) +- tmp <<= 1; /* double the width of the buffer */ ++ tmp <<= 1; /* double the width of the buffer */ + } else if (pScrn->bitsPerPixel == 24) { + tmp += tmp << 1; + } else if (pScrn->bitsPerPixel == 32) { +@@ -5688,8 +5560,7 @@ chipsModeInitHiQV(ScrnInfoPtr pScrn, DisplayModePtr mode) + + /* centering/stretching */ + if (!xf86ReturnOptValBool(cPtr->Options, OPTION_SUSPEND_HACK, FALSE)) { +- if (!xf86ReturnOptValBool(cPtr->Options, OPTION_LCD_STRETCH, FALSE) || +- (cPtr->Flags & ChipsOverlay8plus16)) { ++ if (!xf86ReturnOptValBool(cPtr->Options, OPTION_LCD_STRETCH, FALSE)) { + ChipsNew->FR[0x40] &= 0xDF; /* Disable Horizontal stretching */ + ChipsNew->FR[0x48] &= 0xFB; /* Disable vertical stretching */ + ChipsNew->XR[0xA0] = 0x10; /* Disable cursor stretching */ +@@ -5709,8 +5580,7 @@ chipsModeInitHiQV(ScrnInfoPtr pScrn, DisplayModePtr mode) + } + } + +- if ((xf86ReturnOptValBool(cPtr->Options, OPTION_LCD_CENTER, TRUE)) +- || (cPtr->Flags & ChipsOverlay8plus16)) { ++ if (xf86ReturnOptValBool(cPtr->Options, OPTION_LCD_CENTER, TRUE)) { + ChipsNew->FR[0x40] |= 0x3; /* Enable Horizontal centering */ + ChipsNew->FR[0x48] |= 0x3; /* Enable Vertical centering */ + } else { +@@ -5723,8 +5593,7 @@ chipsModeInitHiQV(ScrnInfoPtr pScrn, DisplayModePtr mode) + ChipsNew->XR[0x82] |=0x02; + + /* software mode flag */ +- ChipsNew->XR[0xE2] = chipsVideoMode(((cPtr->Flags & ChipsOverlay8plus16) ? +- 8 : pScrn->depth), (cPtr->PanelType & ChipsLCD) ? ++ ChipsNew->XR[0xE2] = chipsVideoMode((pScrn->depth), (cPtr->PanelType & ChipsLCD) ? + min(mode->CrtcHDisplay, cPtr->PanelSize.HDisplay) : + mode->CrtcHDisplay, mode->CrtcVDisplay); + #ifdef DEBUG +@@ -5762,7 +5631,7 @@ chipsModeInitHiQV(ScrnInfoPtr pScrn, DisplayModePtr mode) + } + } + /* bpp depend */ +- if ((pScrn->bitsPerPixel == 16) && (!(cPtr->Flags & ChipsOverlay8plus16))) { ++ if (pScrn->bitsPerPixel == 16) { + ChipsNew->XR[0x81] = (ChipsNew->XR[0x81] & 0xF0) | 0x4; + if (cPtr->Flags & ChipsGammaSupport) + ChipsNew->XR[0x82] |= 0x0C; +@@ -5915,60 +5784,7 @@ chipsModeInitHiQV(ScrnInfoPtr pScrn, DisplayModePtr mode) + /* Turn off multimedia by default as it degrades performance */ + ChipsNew->XR[0xD0] &= 0x0f; + +- /* Setup the video/overlay */ +- if (cPtr->Flags & ChipsOverlay8plus16) { +- ChipsNew->XR[0xD0] |= 0x10; /* Force the Multimedia engine on */ +-#ifdef SAR04 +- ChipsNew->XR[0x4F] = 0x2A; /* SAR04 >352 pixel overlay width */ +-#endif +- ChipsNew->MR[0x1E] &= 0xE0; /* Set Zoom and Direction */ +- if ((!(cPtr->PanelType & ChipsLCD)) && (mode->Flags & V_INTERLACE)) +- ChipsNew->MR[0x1E] |= 0x10; /* Interlace */ +- ChipsNew->MR[0x1F] &= 0x14; /* Mask reserved bits */ +- ChipsNew->MR[0x1F] |= 0x08; /* RGB 16bpp */ +- if (pScrn->weight.green == 5) +- ChipsNew->MR[0x1F] |= 0x01; /* RGB 15bpp */ +- +- ChipsNew->MR[0x20] &= 0x03; /* Mask reserved bits */ +- ChipsNew->MR[0x20] |= 0x80; /* Auto Centre, Use mem ptr1 */ +- ChipsNew->MR[0x22] = cPtr->FbOffset16 & 0xF8; /* Setup Pointer 1 */ +- ChipsNew->MR[0x23] = (cPtr->FbOffset16 >> 8) & 0xFF; +- ChipsNew->MR[0x24] = (cPtr->FbOffset16 >> 16) & 0xFF; +- ChipsNew->MR[0x25] = cPtr->FbOffset16 & 0xF8; /* Setup Pointer 2 */ +- ChipsNew->MR[0x26] = (cPtr->FbOffset16 >> 8) & 0xFF; +- ChipsNew->MR[0x27] = (cPtr->FbOffset16 >> 16) & 0xFF; +- ChipsNew->MR[0x28] = (pScrn->displayWidth >> 2) - 1; /* Width */ +- ChipsNew->MR[0x34] = (pScrn->displayWidth >> 2) - 1; +- +- /* Left Edge of Overlay */ +- ChipsNew->MR[0x2A] = cPtr->OverlaySkewX; +- ChipsNew->MR[0x2B] &= 0xF8; /* Mask reserved bits */ +- ChipsNew->MR[0x2B] |= ((cPtr->OverlaySkewX >> 8) & 0x7); +- /* Right Edge of Overlay */ +- ChipsNew->MR[0x2C] = (cPtr->OverlaySkewX + pScrn->displayWidth - +- 1) & 0xFF; +- ChipsNew->MR[0x2D] &= 0xF8; /* Mask reserved bits */ +- ChipsNew->MR[0x2D] |= ((cPtr->OverlaySkewX + pScrn->displayWidth - +- 1) >> 8) & 0x07; +- /* Top Edge of Overlay */ +- ChipsNew->MR[0x2E] = cPtr->OverlaySkewY; +- ChipsNew->MR[0x2F] &= 0xF8; +- ChipsNew->MR[0x2F] |= ((cPtr->OverlaySkewY >> 8) & 0x7); +- /* Bottom Edge of Overlay*/ +- ChipsNew->MR[0x30] = (cPtr->OverlaySkewY + pScrn->virtualY - 1 )& 0xFF; +- ChipsNew->MR[0x31] &= 0xF8; /* Mask reserved bits */ +- ChipsNew->MR[0x31] |= ((cPtr->OverlaySkewY + pScrn->virtualY - +- 1 ) >> 8) & 0x07; +- +- ChipsNew->MR[0x3C] &= 0x18; /* Mask reserved bits */ +- ChipsNew->MR[0x3C] |= 0x07; /* Enable keyed overlay window */ +- ChipsNew->MR[0x3D] = 0x00; +- ChipsNew->MR[0x3E] = 0x00; +- ChipsNew->MR[0x3F] = pScrn->colorKey; /* 8bpp transparency key */ +- ChipsNew->MR[0x40] = 0xFF; +- ChipsNew->MR[0x41] = 0xFF; +- ChipsNew->MR[0x42] = 0x00; +- } else if (cPtr->Flags & ChipsVideoSupport) { ++ if (cPtr->Flags & ChipsVideoSupport) { + #if 0 /* if we do this even though video isn't playing we kill performance */ + ChipsNew->XR[0xD0] |= 0x10; /* Force the Multimedia engine on */ + #endif +@@ -6877,8 +6693,7 @@ chipsRestoreExtendedRegs(ScrnInfoPtr pScrn, CHIPSRegPtr Regs) + } + + /* Set SAR04 multimedia register correctly */ +- if ((cPtr->Flags & ChipsOverlay8plus16) +- || (cPtr->Flags & ChipsVideoSupport)) { ++ if ((cPtr->Flags & ChipsVideoSupport)) { + #ifdef SAR04 + cPtr->writeXR(cPtr, 0x4E, 0x04); + if (cPtr->readXR(cPtr, 0x4F) != Regs->XR[0x4F]) +diff --git a/src/ct_driver.h b/src/ct_driver.h +index d8ce228..9033867 100644 +--- a/src/ct_driver.h ++++ b/src/ct_driver.h +@@ -114,7 +114,6 @@ typedef struct { + /* Options flags for the C&T chipsets */ + #define ChipsHWCursor 0x00001000 + #define ChipsShadowFB 0x00002000 +-#define ChipsOverlay8plus16 0x00004000 + #define ChipsUseNewFB 0x00008000 + + /* Architecture type flags */ +@@ -272,11 +271,13 @@ typedef struct { + + typedef struct _CHIPSRec { + pciVideoPtr PciInfo; ++#ifndef XSERVER_LIBPCIACCESS + PCITAG PciTag; ++#endif + int Chipset; + EntityInfoPtr pEnt; +- IOADDRESS PIOBase; +- CARD32 IOAddress; ++ unsigned long PIOBase; ++ unsigned long IOAddress; + unsigned long FbAddress; + unsigned int IOBase; + unsigned char * FbBase; +diff --git a/src/ct_video.c b/src/ct_video.c +index a68acb9..c9e5bb4 100644 +--- a/src/ct_video.c ++++ b/src/ct_video.c +@@ -56,8 +56,7 @@ CHIPSInitVideo(ScreenPtr pScreen) + CHIPSPtr cPtr = CHIPSPTR(pScrn); + int num_adaptors; + +- if (!(cPtr->Flags & ChipsOverlay8plus16) && +- (cPtr->Flags & ChipsVideoSupport)) { ++ if ((cPtr->Flags & ChipsVideoSupport)) { + newAdaptor = CHIPSSetupImageVideo(pScreen); + CHIPSInitOffscreenImages(pScreen); + } +diff --git a/util/dRegs.c b/util/dRegs.c +index b7edc8f..0d2f0cb 100644 +--- a/util/dRegs.c ++++ b/util/dRegs.c +@@ -1,63 +1,8 @@ +- +- +- +- +- +- +-#ifdef __NetBSD__ +-# include <sys/types.h> +-# include <machine/pio.h> +-# include <machine/sysarch.h> +-#else +-# if defined(SVR4) && defined(i386) +-# include <sys/types.h> +-# ifdef NCR +- /* broken NCR <sys/sysi86.h> */ +-# define __STDC +-# include <sys/sysi86.h> +-# undef __STDC +-# else +-# include <sys/sysi86.h> +-# endif +-# ifdef SVR4 +-# if !defined(sun) +-# include <sys/seg.h> +-# endif +-# endif +-# include <sys/v86.h> +-# if defined(sun) +-# include <sys/psw.h> +-# endif +-# endif +-# include "AsmMacros.h" +-#endif /* NetBSD */ +- + #include <unistd.h> + #include <stdio.h> + #include <stdlib.h> + +-#ifdef __NetBSD__ +-# define SET_IOPL() i386_iopl(3) +-# define RESET_IOPL() i386_iopl(0) +-#else +-# if defined(SVR4) && defined(i386) +-# ifndef SI86IOPL +-# define SET_IOPL() sysi86(SI86V86,V86SC_IOPL,PS_IOPL) +-# define RESET_IOPL() sysi86(SI86V86,V86SC_IOPL,0) +-# else +-# define SET_IOPL() sysi86(SI86IOPL,3) +-# define RESET_IOPL() sysi86(SI86IOPL,0) +-# endif +-# else +-# ifdef linux +-# define SET_IOPL() iopl(3) +-# define RESET_IOPL() iopl(0) +-# else +-# define SET_IOPL() (void)0 +-# define RESET_IOPL() (void)0 +-# endif +-# endif +-#endif ++#include "iopl.h" + + int main(void) + { +diff --git a/util/iopl.h b/util/iopl.h +new file mode 100644 +index 0000000..e08207c +--- /dev/null ++++ b/util/iopl.h +@@ -0,0 +1,60 @@ ++#ifdef __NetBSD__ ++# include <sys/types.h> ++# include <machine/pio.h> ++# include <machine/sysarch.h> ++#else ++# if defined(__linux__) ++/* Can't because <sys/iopl.h> provides conflicting inb, outb, etc ++ * # include <sys/io.h> ++ */ ++int iopl(int level); ++# endif ++# if defined(SVR4) && defined(i386) ++# include <sys/types.h> ++# ifdef NCR ++ /* broken NCR <sys/sysi86.h> */ ++# define __STDC ++# include <sys/sysi86.h> ++# undef __STDC ++# else ++# include <sys/sysi86.h> ++# endif ++# ifdef SVR4 ++# if !defined(sun) ++# include <sys/seg.h> ++# endif ++# endif ++# include <sys/v86.h> ++# if defined(sun) ++# include <sys/psw.h> ++# endif ++# endif ++# include "AsmMacros.h" ++#endif /* NetBSD */ ++ ++#include <unistd.h> ++#include <stdio.h> ++#include <stdlib.h> ++ ++#ifdef __NetBSD__ ++# define SET_IOPL() i386_iopl(3) ++# define RESET_IOPL() i386_iopl(0) ++#else ++# if defined(SVR4) && defined(i386) ++# ifndef SI86IOPL ++# define SET_IOPL() sysi86(SI86V86,V86SC_IOPL,PS_IOPL) ++# define RESET_IOPL() sysi86(SI86V86,V86SC_IOPL,0) ++# else ++# define SET_IOPL() sysi86(SI86IOPL,3) ++# define RESET_IOPL() sysi86(SI86IOPL,0) ++# endif ++# else ++# ifdef linux ++# define SET_IOPL() iopl(3) ++# define RESET_IOPL() iopl(0) ++# else ++# define SET_IOPL() (void)0 ++# define RESET_IOPL() (void)0 ++# endif ++# endif ++#endif +diff --git a/util/mRegs.c b/util/mRegs.c +index f359738..843d01d 100644 +--- a/util/mRegs.c ++++ b/util/mRegs.c +@@ -1,63 +1,8 @@ +- +- +- +- +- +- +-#ifdef __NetBSD__ +-# include <sys/types.h> +-# include <machine/pio.h> +-# include <machine/sysarch.h> +-#else +-# if defined(SVR4) && defined(i386) +-# include <sys/types.h> +-# ifdef NCR +- /* broken NCR <sys/sysi86.h> */ +-# define __STDC +-# include <sys/sysi86.h> +-# undef __STDC +-# else +-# include <sys/sysi86.h> +-# endif +-# ifdef SVR4 +-# if !defined(sun) +-# include <sys/seg.h> +-# endif +-# endif +-# include <sys/v86.h> +-# if defined(sun) +-# include <sys/psw.h> +-# endif +-# endif +-# include "AsmMacros.h" +-#endif /* NetBSD */ +- + #include <unistd.h> + #include <stdio.h> + #include <stdlib.h> + +-#ifdef __NetBSD__ +-# define SET_IOPL() i386_iopl(3) +-# define RESET_IOPL() i386_iopl(0) +-#else +-# if defined(SVR4) && defined(i386) +-# ifndef SI86IOPL +-# define SET_IOPL() sysi86(SI86V86,V86SC_IOPL,PS_IOPL) +-# define RESET_IOPL() sysi86(SI86V86,V86SC_IOPL,0) +-# else +-# define SET_IOPL() sysi86(SI86IOPL,3) +-# define RESET_IOPL() sysi86(SI86IOPL,0) +-# endif +-# else +-# ifdef linux +-# define SET_IOPL() iopl(3) +-# define RESET_IOPL() iopl(0) +-# else +-# define SET_IOPL() (void)0 +-# define RESET_IOPL() (void)0 +-# endif +-# endif +-#endif ++#include "iopl.h" + + int hex2int(char* str); + +diff --git a/util/modClock.c b/util/modClock.c +index 89a291a..45af19b 100644 +--- a/util/modClock.c ++++ b/util/modClock.c +@@ -1,61 +1,12 @@ +- +-#ifdef __NetBSD__ +-# include <sys/types.h> +-# include <machine/pio.h> +-# include <machine/sysarch.h> +-#else +-# if defined(SVR4) && defined(i386) +-# include <sys/types.h> +-# ifdef NCR +- /* broken NCR <sys/sysi86.h> */ +-# define __STDC +-# include <sys/sysi86.h> +-# undef __STDC +-# else +-# include <sys/sysi86.h> +-# endif +-# ifdef SVR4 +-# if !defined(sun) +-# include <sys/seg.h> +-# endif +-# endif +-# include <sys/v86.h> +-# if defined(sun) +-# include <sys/psw.h> +-# endif +-# endif +-# include "AsmMacros.h" +-#endif /* NetBSD */ +- + #include <unistd.h> + #include <stdio.h> + #include <stdlib.h> ++ + #ifndef Lynx + #include <fnmatch.h> + #endif + +-#ifdef __NetBSD__ +-# define SET_IOPL() i386_iopl(3) +-# define RESET_IOPL() i386_iopl(0) +-#else +-# if defined(SVR4) && defined(i386) +-# ifndef SI86IOPL +-# define SET_IOPL() sysi86(SI86V86,V86SC_IOPL,PS_IOPL) +-# define RESET_IOPL() sysi86(SI86V86,V86SC_IOPL,0) +-# else +-# define SET_IOPL() sysi86(SI86IOPL,3) +-# define RESET_IOPL() sysi86(SI86IOPL,0) +-# endif +-# else +-# ifdef linux +-# define SET_IOPL() iopl(3) +-# define RESET_IOPL() iopl(0) +-# else +-# define SET_IOPL() (void)0 +-# define RESET_IOPL() (void)0 +-# endif +-# endif +-#endif ++#include "iopl.h" + + #define tolerance 0.01 /* +/- 1% */ + diff --git a/staging/xf86-video-nouveau/PKGBUILD b/staging/xf86-video-nouveau/PKGBUILD new file mode 100644 index 000000000..256dd69fd --- /dev/null +++ b/staging/xf86-video-nouveau/PKGBUILD @@ -0,0 +1,41 @@ +# $Id: PKGBUILD 149767 2012-02-10 14:54:11Z ibiru $ +# Maintainer: Andreas Radke <andyrtr@archlinux.org> +# Contributor: buddabrod <buddabrod@gmail.com> + +pkgname=xf86-video-nouveau +_gitdate=20120210 +pkgver=0.0.16_git${_gitdate} # see configure.ac +pkgrel=1 +pkgdesc="Open Source 3D acceleration driver for nVidia cards (experimental)" +arch=('i686' 'x86_64') +url="http://nouveau.freedesktop.org/wiki/" +license=('GPL') #and MIT, not yet a license file, see http://nouveau.freedesktop.org/wiki/FAQ#head-09f75d03eb30011c754038a3893119a70745de4e +depends=('libdrm' 'udev') +optdepends=('nouveau-dri: experimental gallium3d features') +makedepends=('xorg-server-devel' 'libdrm' 'xf86driproto') +conflicts=('xorg-server<1.11.99.902') +options=('!libtool') +install=$pkgname.install +source=(ftp://ftp.archlinux.org/other/$pkgname/xf86-video-nouveau-${_gitdate}.tar.bz2) +md5sums=('f35c12d64542d0ea792a9e5af63a2e5a') + +# source PKGBUILD && mksource +mksource() { + mkdir /tmp/$pkgname-${_gitdate} + pushd /tmp/$pkgname-${_gitdate} + git clone -v --depth 1 git://anongit.freedesktop.org/nouveau/xf86-video-nouveau + cd xf86-video-nouveau + git archive --prefix=xf86-video-nouveau-${_gitdate}/ --format=tar HEAD | bzip2 > /tmp/$pkgname-${_gitdate}/$pkgname-${_gitdate}.tar.bz2 + popd +} + +build() { + cd $srcdir/xf86-video-nouveau-${_gitdate} + ./autogen.sh --prefix=/usr + make +} + +package() { + cd $srcdir/xf86-video-nouveau-${_gitdate} + make DESTDIR=$pkgdir install +} diff --git a/staging/xf86-video-nouveau/xf86-video-nouveau.install b/staging/xf86-video-nouveau/xf86-video-nouveau.install new file mode 100644 index 000000000..027154ff3 --- /dev/null +++ b/staging/xf86-video-nouveau/xf86-video-nouveau.install @@ -0,0 +1,16 @@ +post_install () { + cat << _EOF + ==> make sure you use KernelModeSetting (KMS) + ==> see http://wiki.archlinux.org/index.php/Nouveau#KMS for more +_EOF +} + +post_upgrade() { + if [ "`vercmp $2 0.0.15_git20100117-1`" -lt 0 ]; then + cat << _EOF + ==> ATTENTION: Usermode support has been dropped + ==> make sure you use KernelModeSetting (KMS) + ==> see http://wiki.archlinux.org/index.php/Nouveau#KMS for more +_EOF + fi +} diff --git a/staging/xf86-video-openchrome/PKGBUILD b/staging/xf86-video-openchrome/PKGBUILD new file mode 100644 index 000000000..ae49965b8 --- /dev/null +++ b/staging/xf86-video-openchrome/PKGBUILD @@ -0,0 +1,31 @@ +# $Id: PKGBUILD 149786 2012-02-10 20:52:27Z andyrtr $ +# Contributor: Paul Mattal <paul@mattal.com> +# Maintainer: Juergen Hoetzel <juergen@hoetzel.info> + +pkgname=xf86-video-openchrome +pkgver=0.2.905 +pkgrel=1 +pkgdesc="X.Org Openchrome drivers" +arch=(i686 x86_64) +license=('custom') +url="http://www.openchrome.org" +depends=('libdrm' 'libxvmc') +makedepends=('xorg-server-devel>=1.11.99.902' 'libx11' 'xf86driproto' 'mesa') #'glproto' 'libgl') +replaces=('openchrome' 'xf86-video-via') +options=('!libtool' '!emptydirs' '!makeflags') +conflicts=('xf86-video-via' 'xf86-video-unichrome' 'openchrome' 'xorg-server<1.11.99.902' 'unichrome-dri') +source=(http://xorg.freedesktop.org/archive/individual/driver/${pkgname}-${pkgver}.tar.bz2) +md5sums=('51871431a4a9204ab8ec79335c0cc041') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + ./configure --prefix=/usr # --disable-dri + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" +} diff --git a/staging/xorg-server/PKGBUILD b/staging/xorg-server/PKGBUILD index 1c5366035..2c8f0cd3c 100644 --- a/staging/xorg-server/PKGBUILD +++ b/staging/xorg-server/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 148569 2012-02-03 18:09:18Z andyrtr $ +# $Id: PKGBUILD 149765 2012-02-10 14:43:55Z ibiru $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgbase=xorg-server pkgname=('xorg-server' 'xorg-server-xephyr' 'xorg-server-xdmx' 'xorg-server-xvfb' 'xorg-server-xnest' 'xorg-server-common' 'xorg-server-devel') pkgver=1.11.99.902 -pkgrel=1 +pkgrel=2 arch=('i686' 'x86_64') license=('custom') url="http://xorg.freedesktop.org" @@ -16,15 +16,13 @@ options=('!libtool') source=(${url}/releases/individual/xserver/${pkgbase}-${pkgver}.tar.bz2 autoconfig-nvidia.patch autoconfig-sis.patch - revert-trapezoids.patch #git-fixes.patch xvfb-run xvfb-run.1 10-quirks.conf) md5sums=('c1535e351dc73836a9000b7c9bc13112' - '6c7e87d63ac4b535e19a80c89d0cf091' + '7adcd74aebad71af7cc7b68c35aaaf35' 'f8194638ca4872c2b0a67862a70bcebf' - 'f6c84f4936f8e00abdfbd9fb4eda83fb' '52fd3effd80d7bc6c1660d4ecf23d31c' '376c70308715cd2643f7bff936d9934b' 'd4f7dfc6be4ef4e2c6dd7632a9d88abe') @@ -33,14 +31,11 @@ build() { cd "${srcdir}/${pkgbase}-${pkgver}" # Use nouveau/nv/nvidia drivers for nvidia devices -# patch -Np1 -i "${srcdir}/autoconfig-nvidia.patch" + patch -Np1 -i "${srcdir}/autoconfig-nvidia.patch" # Use unofficial imedia SiS driver for supported SiS devices patch -Np0 -i "${srcdir}/autoconfig-sis.patch" - # Revert commit that causes huge slowdowns with binary nVidia driver - patch -Np1 -i "${srcdir}/revert-trapezoids.patch" - # Add post-release patches from 1.11 branch # patch -Np1 -i "${srcdir}/git-fixes.patch" diff --git a/staging/xorg-server/autoconfig-nvidia.patch b/staging/xorg-server/autoconfig-nvidia.patch index baa2eb601..9ed9b7aee 100644 --- a/staging/xorg-server/autoconfig-nvidia.patch +++ b/staging/xorg-server/autoconfig-nvidia.patch @@ -1,29 +1,28 @@ ---- a/hw/xfree86/common/xf86pciBus.c -+++ b/hw/xfree86/common/xf86pciBus.c -@@ -1123,7 +1123,25 @@ videoPtrToDriverList(struct pci_device * +diff -Nur xorg-server-1.11.99.902.orig/hw/xfree86/common/xf86pciBus.c xorg-server-1.11.99.902/hw/xfree86/common/xf86pciBus.c +--- xorg-server-1.11.99.902.orig/hw/xfree86/common/xf86pciBus.c 2012-02-10 10:10:37.583014924 +0000 ++++ xorg-server-1.11.99.902/hw/xfree86/common/xf86pciBus.c 2012-02-10 11:16:07.148971317 +0000 +@@ -1111,7 +1111,23 @@ + { + int idx = 0; + #ifdef __linux__ +- driverList[idx++] = "nouveau"; ++ switch (dev->device_id) ++ { ++ /* NV1 */ ++ case 0x0008: ++ case 0x0009: ++ driverList[idx++] = "vesa"; ++ break; ++ /* NV3 */ ++ case 0x0018: ++ case 0x0019: ++ driverList[idx++] = "nouveau"; ++ break; ++ default: ++ driverList[idx++] = "nouveau"; ++ driverList[idx++] = "nvidia"; ++ break; ++ } + #endif + driverList[idx++] = "nv"; break; - case 0x102b: driverList[0] = "mga"; break; - case 0x10c8: driverList[0] = "neomagic"; break; -- case 0x10de: case 0x12d2: driverList[0] = "nv"; break; -+ case 0x10de: case 0x12d2: -+ switch (dev->device_id) { -+ /* NV1 */ -+ case 0x0008: -+ case 0x0009: -+ driverList[0] = "vesa"; -+ break; -+ /* NV3 */ -+ case 0x0018: -+ case 0x0019: -+ driverList[0] = "nv"; -+ break; -+ default: -+ driverList[0] = "nouveau"; -+ driverList[1] = "nv"; -+ driverList[2] = "nvidia"; -+ break; -+ } -+ break; - case 0x1106: driverList[0] = "openchrome"; break; - case 0x1b36: driverList[0] = "qxl"; break; - case 0x1163: driverList[0] = "rendition"; break; |