summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorjose17112016-06-11 18:38:02 +0200
committerjose17112016-06-11 18:38:02 +0200
commitc2585e9891f39450ee5abf6369ff038a305cb11f (patch)
tree2f900ea3daf6281bc58e9ddfb768da0edcb2e262
parentb1656c072cbf1a1ab35c14ca025a73beb4cc8750 (diff)
downloadaur-c2585e9891f39450ee5abf6369ff038a305cb11f.tar.gz
updated
-rw-r--r--.SRCINFO12
-rw-r--r--PKGBUILD12
-rw-r--r--linux-4.6.patch50
-rw-r--r--nvidia.install6
4 files changed, 67 insertions, 13 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 1802f66fbdb6..f31aa6e7293b 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,5 +1,5 @@
# Generated by mksrcinfo v8
-# Mon Apr 25 16:52:51 UTC 2016
+# Sat Jun 11 16:37:30 UTC 2016
pkgbase = nvidia-pae
pkgdesc = NVIDIA drivers for linux
pkgver = 364.19
@@ -10,17 +10,19 @@ pkgbase = nvidia-pae
makedepends = nvidia-libgl
makedepends = nvidia-utils=364.19
makedepends = linux-pae
- makedepends = linux-pae-headers>=4.5
- makedepends = linux-pae-headers<4.6
+ makedepends = linux-pae-headers>=4.6
+ makedepends = linux-pae-headers<4.7
options = !strip
source = http://us.download.nvidia.com/XFree86/Linux-x86/364.19/NVIDIA-Linux-x86-364.19.run
+ source = linux-4.6.patch
md5sums = 8a4015213c4a8f1c80e9520d04a32a7b
+ md5sums = 3064bd437b26adac246f301f54f2814c
pkgname = nvidia-pae
pkgdesc = NVIDIA drivers for linux
install = nvidia.install
- depends = linux-pae>=4.5
- depends = linux-pae<4.6
+ depends = linux-pae>=4.6
+ depends = linux-pae<4.7
depends = nvidia-utils=364.19
depends = libgl
diff --git a/PKGBUILD b/PKGBUILD
index e2c4986ec3cb..d4ba7d65a3c3 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -6,17 +6,18 @@
pkgbase=nvidia-pae
pkgname=(nvidia-pae nvidia-pae-dkms)
pkgver=364.19
-_extramodules=extramodules-4.5-pae
+_extramodules=extramodules-4.6-pae
pkgrel=1
pkgdesc="NVIDIA drivers for linux"
arch=('i686')
url="http://www.nvidia.com/"
-makedepends=('nvidia-libgl' "nvidia-utils=${pkgver}" 'linux-pae' 'linux-pae-headers>=4.5' 'linux-pae-headers<4.6')
+makedepends=('nvidia-libgl' "nvidia-utils=${pkgver}" 'linux-pae' 'linux-pae-headers>=4.6' 'linux-pae-headers<4.7')
license=('custom')
options=('!strip')
# See nvidia-utils
-source=("http://us.download.nvidia.com/XFree86/Linux-x86/${pkgver}/NVIDIA-Linux-x86-${pkgver}.run")
-md5sums=('8a4015213c4a8f1c80e9520d04a32a7b')
+source=("http://us.download.nvidia.com/XFree86/Linux-x86/${pkgver}/NVIDIA-Linux-x86-${pkgver}.run" 'linux-4.6.patch')
+md5sums=('8a4015213c4a8f1c80e9520d04a32a7b'
+ '3064bd437b26adac246f301f54f2814c')
_pkg="NVIDIA-Linux-x86-${pkgver}"
@@ -24,6 +25,7 @@ prepare() {
sh "${_pkg}.run" --extract-only
cd "${_pkg}"
# patches here
+ patch -p1 --no-backup-if-mismatch -i ../linux-4.6.patch
cp -a kernel kernel-dkms
cd kernel-dkms
@@ -48,7 +50,7 @@ build() {
package_nvidia-pae() {
pkgdesc="NVIDIA drivers for linux"
- depends=('linux-pae>=4.5' 'linux-pae<4.6' "nvidia-utils=${pkgver}" 'libgl')
+ depends=('linux-pae>=4.6' 'linux-pae<4.7' "nvidia-utils=${pkgver}" 'libgl')
install=nvidia.install
install -D -m644 "${srcdir}/${_pkg}/kernel/nvidia.ko" \
diff --git a/linux-4.6.patch b/linux-4.6.patch
new file mode 100644
index 000000000000..3dde4730532b
--- /dev/null
+++ b/linux-4.6.patch
@@ -0,0 +1,50 @@
+--- a/kernel/nvidia-drm/nvidia-drm-fb.c
++++ b/kernel/nvidia-drm/nvidia-drm-fb.c
+@@ -77,7 +77,7 @@
+ static struct drm_framebuffer *internal_framebuffer_create
+ (
+ struct drm_device *dev,
+- struct drm_file *file, struct drm_mode_fb_cmd2 *cmd,
++ struct drm_file *file, const struct drm_mode_fb_cmd2 *cmd,
+ uint64_t nvkms_params_ptr,
+ uint64_t nvkms_params_size
+ )
+@@ -199,7 +199,7 @@
+ struct drm_framebuffer *nvidia_drm_framebuffer_create
+ (
+ struct drm_device *dev,
+- struct drm_file *file, struct drm_mode_fb_cmd2 *cmd
++ struct drm_file *file, const struct drm_mode_fb_cmd2 *cmd
+ )
+ {
+ return internal_framebuffer_create(dev, file, cmd, 0, 0);
+--- a/kernel/nvidia-drm/nvidia-drm-fb.h
++++ b/kernel/nvidia-drm/nvidia-drm-fb.h
+@@ -45,7 +45,7 @@
+ struct drm_framebuffer *nvidia_drm_framebuffer_create
+ (
+ struct drm_device *dev,
+- struct drm_file *file, struct drm_mode_fb_cmd2 *cmd
++ struct drm_file *file, const struct drm_mode_fb_cmd2 *cmd
+ );
+
+ int nvidia_drm_add_nvkms_fb(
+--- a/kernel/nvidia-drm/nvidia-drm-linux.c
++++ b/kernel/nvidia-drm/nvidia-drm-linux.c
+@@ -31,6 +31,7 @@
+
+ #if defined(NV_DRM_AVAILABLE)
+
++#include "nv-mm.h"
+ #include "nv-pgprot.h"
+
+ MODULE_PARM_DESC(
+@@ -121,8 +122,7 @@
+
+ down_read(&mm->mmap_sem);
+
+- pages_pinned = get_user_pages(current, mm,
+- address, pages_count, write, force,
++ pages_pinned = NV_GET_USER_PAGES(address, pages_count, write, force,
+ user_pages, NULL);
+ up_read(&mm->mmap_sem); \ No newline at end of file
diff --git a/nvidia.install b/nvidia.install
index 4915282f9cc3..57e3aea88151 100644
--- a/nvidia.install
+++ b/nvidia.install
@@ -1,16 +1,16 @@
post_install() {
- EXTRAMODULES='extramodules-4.5-pae'
+ EXTRAMODULES='extramodules-4.6-pae'
depmod $(cat /lib/modules/$EXTRAMODULES/version)
echo 'In order to use nvidia module, reboot the system.'
}
post_upgrade() {
- EXTRAMODULES='extramodules-4.5-pae'
+ EXTRAMODULES='extramodules-4.6-pae'
depmod $(cat /lib/modules/$EXTRAMODULES/version)
rmmod nvidia || echo 'In order to use the new nvidia module, exit Xserver and unload it manually.'
}
post_remove() {
- EXTRAMODULES='extramodules-4.5-pae'
+ EXTRAMODULES='extramodules-4.6-pae'
depmod $(cat /lib/modules/$EXTRAMODULES/version)
}