diff options
author | James Meyer <james.meyer@operamail.com> | 2010-04-04 19:17:38 (GMT) |
---|---|---|
committer | James Meyer <james.meyer@operamail.com> | 2010-04-04 19:17:38 (GMT) |
commit | 52a3c918e68f44a7cb3a93d36283b78c6327e6c4 (patch) | |
tree | ae2fbc0a2591418d2f222d1b5e61118196437119 /abs/core-testing/nvidia-96xx | |
parent | 848671fcce267e2f393e5c0b835b3b37074e58df (diff) | |
download | linhes_pkgbuild-52a3c918e68f44a7cb3a93d36283b78c6327e6c4.zip linhes_pkgbuild-52a3c918e68f44a7cb3a93d36283b78c6327e6c4.tar.gz linhes_pkgbuild-52a3c918e68f44a7cb3a93d36283b78c6327e6c4.tar.bz2 |
nvidia-96xx: udpated 96xx driver
Diffstat (limited to 'abs/core-testing/nvidia-96xx')
-rw-r--r-- | abs/core-testing/nvidia-96xx/NVIDIA_173.14.12_2.6.27.patch | 87 | ||||
-rw-r--r-- | abs/core-testing/nvidia-96xx/PKGBUILD | 53 | ||||
-rw-r--r-- | abs/core-testing/nvidia-96xx/nvidia-96.43.11-2.6.30.patch | 103 | ||||
-rw-r--r-- | abs/core-testing/nvidia-96xx/nvidia-96xx.install | 22 | ||||
-rw-r--r-- | abs/core-testing/nvidia-96xx/nvidia.install | 14 |
5 files changed, 142 insertions, 137 deletions
diff --git a/abs/core-testing/nvidia-96xx/NVIDIA_173.14.12_2.6.27.patch b/abs/core-testing/nvidia-96xx/NVIDIA_173.14.12_2.6.27.patch deleted file mode 100644 index 1ba936b..0000000 --- a/abs/core-testing/nvidia-96xx/NVIDIA_173.14.12_2.6.27.patch +++ /dev/null @@ -1,87 +0,0 @@ -diff -Nru NVIDIA-Linux-x86-173.14.12-pkg0.orig/usr/src/nv/nv.c NVIDIA-Linux-x86-173.14.12-pkg0/usr/src/nv/nv.c ---- usr/src/nv/nv.c 2008-07-18 03:42:50.000000000 +0200 -+++ NVIDIA-Linux-x86-173.14.12-pkg0/usr/src/nv/nv.c 2008-08-12 00:35:45.000000000 +0200 -@@ -1296,14 +1296,22 @@ - if (get_cpu() == cpu) - __nv_setup_pat_entries(NULL); - else -+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27) -+ smp_call_function(__nv_setup_pat_entries, hcpu, 1); -+ #else - smp_call_function(__nv_setup_pat_entries, hcpu, 1, 1); -+ #endif - put_cpu(); - break; - case CPU_DOWN_PREPARE: - if (get_cpu() == cpu) - __nv_restore_pat_entries(NULL); - else -+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27) -+ smp_call_function(__nv_restore_pat_entries, hcpu, 1); -+ #else - smp_call_function(__nv_restore_pat_entries, hcpu, 1, 1); -+ #endif - put_cpu(); - break; - } -diff -Nru NVIDIA-Linux-x86-173.14.12-pkg0.orig/usr/src/nv/nv-linux.h NVIDIA-Linux-x86-173.14.12-pkg0/usr/src/nv/nv-linux.h ---- usr/src/nv/nv-linux.h 2008-07-18 03:42:51.000000000 +0200 -+++ NVIDIA-Linux-x86-173.14.12-pkg0/usr/src/nv/nv-linux.h 2008-08-12 00:44:27.000000000 +0200 -@@ -104,7 +104,10 @@ - #endif - - #include <linux/spinlock.h> -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27) -+#else - #include <asm/semaphore.h> -+#endif - #include <linux/completion.h> - #include <linux/highmem.h> - -@@ -665,13 +668,21 @@ - #if defined(preempt_disable) - preempt_disable(); - #endif -+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27) -+ ret = smp_call_function(func, info, 1); -+ #else - ret = smp_call_function(func, info, 1, 1); -+ #endif - func(info); - #if defined(preempt_enable) - preempt_enable(); - #endif - #else -+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27) -+ ret = on_each_cpu(func, info, 1); -+ #else - ret = on_each_cpu(func, info, 1, 1); -+ #endif - #endif - return ret; - } -diff -Nru NVIDIA-Linux-x86-173.14.12-pkg0.orig/usr/src/nv/os-interface.c NVIDIA-Linux-x86-173.14.12-pkg0/usr/src/nv/os-interface.c ---- usr/src/nv/os-interface.c 2008-07-18 03:42:50.000000000 +0200 -+++ NVIDIA-Linux-x86-173.14.12-pkg0/usr/src/nv/os-interface.c 2008-08-12 00:48:07.000000000 +0200 -@@ -48,7 +48,11 @@ - #endif - local_bh_disable(); - atomic_set(&os_smp_barrier, 1); -+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27) -+ ret = smp_call_function(ipi_handler, NULL, 0); -+ #else - ret = smp_call_function(ipi_handler, NULL, 1, 0); -+ #endif - #endif - return (ret == 0) ? RM_OK : RM_ERROR; - } -@@ -704,7 +708,9 @@ - U032 sig - ) - { -+ #if LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 26) - return kill_proc(pid, sig, 1) ? RM_ERR_OPERATING_SYSTEM : RM_OK; -+ #endif - } - - /*******************************************************************************/ diff --git a/abs/core-testing/nvidia-96xx/PKGBUILD b/abs/core-testing/nvidia-96xx/PKGBUILD index ee165d2..df89e5f 100644 --- a/abs/core-testing/nvidia-96xx/PKGBUILD +++ b/abs/core-testing/nvidia-96xx/PKGBUILD @@ -1,38 +1,35 @@ -# $Id: PKGBUILD 22496 2008-12-26 22:51:15Z tpowa $ -# Maintainer : Tobias Powalowski <tpowa@archlinux.org> +# $Id: PKGBUILD 69360 2010-02-20 11:24:15Z tpowa $ +# Maintainer : Thomas Baechler <thomas@archlinux.org> pkgname=nvidia-96xx -pkgver=96.43.09 +pkgver=96.43.16 _kernver='2.6.28-LinHES' -pkgrel=5 -pkgdesc="NVIDIA legacy drivers for kernel26, 96xx branch" -arch=(i686 x86_64) -license=('custom:NVIDIA') + +pkgrel=1 +pkgdesc="NVIDIA drivers for kernel26, 96xx branch." +arch=('i686' 'x86_64') [ "$CARCH" = "i686" ] && ARCH=x86 [ "$CARCH" = "x86_64" ] && ARCH=x86_64 url="http://www.nvidia.com/" -depends=('kernel26>=2.6.28' 'kernel26<2.6.29' 'nvidia-96xx-utils' 'vdpinfo-96xx') -conflicts=('nvidia' 'nvidia-71xx' 'nvidia-legacy') -install=nvidia-96xx.install +depends=('kernel26>=2.6.28' 'kernel26<2.6.29' 'nvidia-96xx-utils') +makedepends=('kernel-headers>=2.6.28' 'kernel-headers<2.6.29') +conflicts=('nvidia' 'nvidia-173xx') license=('custom') -source=(http://download.nvidia.com/XFree86/Linux-$ARCH/${pkgver}/NVIDIA-Linux-$ARCH-${pkgver}-pkg0.run) -md5sums=('758c739114b81ea2cb7da7c22ab80a7e') -[ "$CARCH" = "x86_64" ] && md5sums=('00a4cd93adc956f8cf173ab1036a5bf7') +install=nvidia.install +source=("http://download.nvidia.com/XFree86/Linux-$ARCH/${pkgver}/NVIDIA-Linux-$ARCH-${pkgver}-pkg0.run") +md5sums=('7479b25c747e29af95b9ccf06f43fbf9') +[ "$CARCH" = "x86_64" ] && md5sums=('73e226d4ee0996b6df4bdf44cc1fc6f5') + +build() { + cd $srcdir + sh NVIDIA-Linux-$ARCH-${pkgver}-pkg0.run --extract-only + cd NVIDIA-Linux-$ARCH-${pkgver}-pkg0 + cd usr/src/nv/ + ln -s Makefile.kbuild Makefile + make SYSSRC=/lib/modules/${_kernver}/build module || return 1 -build() -{ - # Extract - cd $startdir/src/ - sh NVIDIA-Linux-$ARCH-${pkgver}-pkg0.run --extract-only - cd NVIDIA-Linux-$ARCH-${pkgver}-pkg0 - - cd usr/src/nv/ - ln -s Makefile.kbuild Makefile - make SYSSRC=/lib/modules/$_kernver/build module || return 1 - - # install kernel module - mkdir -p $startdir/pkg/lib/modules/${_kernver}/kernel/drivers/video/ - install -m644 nvidia.ko $startdir/pkg/lib/modules/${_kernver}/kernel/drivers/video/ || return 1 + mkdir -p $pkgdir/lib/modules/${_kernver}/kernel/drivers/video/ + install -m644 nvidia.ko $pkgdir/lib/modules/${_kernver}/kernel/drivers/video/ - sed -i -e "s/KERNEL_VERSION='.*'/KERNEL_VERSION='${_kernver}'/" $startdir/*.install + sed -i -e "s/KERNEL_VERSION='.*'/KERNEL_VERSION='${_kernver}'/" $startdir/nvidia.install } diff --git a/abs/core-testing/nvidia-96xx/nvidia-96.43.11-2.6.30.patch b/abs/core-testing/nvidia-96xx/nvidia-96.43.11-2.6.30.patch new file mode 100644 index 0000000..44d44fd --- /dev/null +++ b/abs/core-testing/nvidia-96xx/nvidia-96.43.11-2.6.30.patch @@ -0,0 +1,103 @@ +--- usr/src/nv/nv.c.orig ++++ usr/src/nv/nv.c +@@ -15,6 +15,7 @@ + #include "nv_compiler.h" + #include "os-agp.h" + #include "nv-vm.h" ++#include <linux/version.h> + + #ifdef MODULE_ALIAS_CHARDEV_MAJOR + MODULE_ALIAS_CHARDEV_MAJOR(NV_MAJOR_DEVICE_NUMBER); +@@ -499,10 +500,12 @@ + * Set the module owner to ensure that the reference + * count reflects accesses to the proc files. + */ ++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30) + proc_nvidia->owner = THIS_MODULE; + proc_nvidia_cards->owner = THIS_MODULE; + proc_nvidia_warnings->owner = THIS_MODULE; + ++#endif + for (j = 0; j < num_nv_devices; j++) + { + nvl = &nv_linux_devices[j]; +@@ -521,7 +524,9 @@ + + entry->data = nv; + entry->read_proc = nv_kern_read_cardinfo; ++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30) + entry->owner = THIS_MODULE; ++#endif + + if (nvos_find_agp_capability(dev)) { + /* +@@ -534,7 +539,9 @@ + goto failed; + } + ++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30) + entry->owner = THIS_MODULE; ++#endif + proc_nvidia_agp = entry; + + entry = create_proc_entry("status", flags, proc_nvidia_agp); +@@ -545,7 +552,9 @@ + + entry->data = nv; + entry->read_proc = nv_kern_read_status; ++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30) + entry->owner = THIS_MODULE; ++#endif + + entry = create_proc_entry("host-bridge", flags, proc_nvidia_agp); + if (!entry) { +@@ -555,8 +564,9 @@ + + entry->data = NULL; + entry->read_proc = nv_kern_read_agpinfo; ++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30) + entry->owner = THIS_MODULE; +- ++#endif + entry = create_proc_entry("card", flags, proc_nvidia_agp); + if (!entry) { + NV_PCI_DEV_PUT(dev); +@@ -565,7 +575,9 @@ + + entry->data = nv; + entry->read_proc = nv_kern_read_agpinfo; ++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30) + entry->owner = THIS_MODULE; ++#endif + } + + NV_PCI_DEV_PUT(dev); +@@ -576,14 +588,18 @@ + goto failed; + + entry->read_proc = nv_kern_read_version; ++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30) + entry->owner = THIS_MODULE; ++#endif + + entry = create_proc_entry("registry", flags, proc_nvidia); + if (!entry) + goto failed; + + entry->read_proc = nv_kern_read_registry; ++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30) + entry->owner = THIS_MODULE; ++#endif + + return; + +@@ -610,7 +626,9 @@ + + entry->data = (void *)message; + entry->read_proc = nv_kern_read_warning; ++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30) + entry->owner = THIS_MODULE; ++#endif + #endif + } + diff --git a/abs/core-testing/nvidia-96xx/nvidia-96xx.install b/abs/core-testing/nvidia-96xx/nvidia-96xx.install deleted file mode 100644 index 23e04af..0000000 --- a/abs/core-testing/nvidia-96xx/nvidia-96xx.install +++ /dev/null @@ -1,22 +0,0 @@ -# arg 1: the new package version -post_install() { - KERNEL_VERSION='2.6.28-LinHES' - depmod -v $KERNEL_VERSION > /dev/null 2>&1 -} - -# arg 1: the new package version -# arg 2: the old package version -post_upgrade() { - post_install $1 - rmmod nvidia || echo 'In order to use the new nvidia module, exit Xserver and unload it manually.' -} - -# arg 1: the old package version -post_remove() { - KERNEL_VERSION='2.6.28-LinHES' - depmod -v $KERNEL_VERSION > /dev/null 2>&1 -} - -op=$1 -shift -$op $* diff --git a/abs/core-testing/nvidia-96xx/nvidia.install b/abs/core-testing/nvidia-96xx/nvidia.install new file mode 100644 index 0000000..ab86ea2 --- /dev/null +++ b/abs/core-testing/nvidia-96xx/nvidia.install @@ -0,0 +1,14 @@ +post_install() { + KERNEL_VERSION='2.6.28-LinHES' + depmod $KERNEL_VERSION +} + +post_upgrade() { + post_install + rmmod nvidia || echo 'In order to use the new nvidia module, exit Xserver and unload it manually.' +} + +post_remove() { + KERNEL_VERSION='2.6.28-LinHES' + depmod $KERNEL_VERSION +} |