summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorsirlucjan2016-08-15 17:24:11 +0200
committersirlucjan2016-08-15 17:24:11 +0200
commitf4b11d9425a718a8ff3c278c8c6a224995a91cb4 (patch)
treecba67c7bdb1dea911379497945fd02cfc1fb46e6
parent9e09da77cbf2145c6cbe81298a7b2ce2c49a5883 (diff)
downloadaur-f4b11d9425a718a8ff3c278c8c6a224995a91cb4.tar.gz
Bump to 4.7 series
-rw-r--r--.SRCINFO22
-rw-r--r--0001-linux-4.7-i686.patch46
-rw-r--r--0001-linux-4.7-x86_64.patch64
-rw-r--r--PKGBUILD38
-rw-r--r--nvidia-lqx.install6
5 files changed, 147 insertions, 29 deletions
diff --git a/.SRCINFO b/.SRCINFO
index a75f2c8ea348..79794217ee8d 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,27 +1,31 @@
# Generated by mksrcinfo v8
-# Sat Jul 30 16:20:51 UTC 2016
+# Mon Aug 15 15:24:11 UTC 2016
pkgbase = nvidia-lqx
- pkgdesc = NVIDIA drivers for linux-lqx
+ pkgdesc = NVIDIA drivers for linux-lqx.
pkgver = 367.35
- pkgrel = 1
+ pkgrel = 2
url = http://www.nvidia.com/
install = nvidia-lqx.install
arch = i686
arch = x86_64
license = custom
- makedepends = linux-lqx-headers>=4.6
- makedepends = linux-lqx-headers<4.7
- depends = linux-lqx>=4.6
- depends = linux-lqx<4.7
+ makedepends = linux-lqx-headers>=4.7
+ makedepends = linux-lqx-headers<4.8
+ depends = linux-lqx>=4.7
+ depends = linux-lqx<4.8
depends = nvidia-libgl
depends = nvidia-utils=367.35
conflicts = nvidia-304xx-lqx
conflicts = nvidia-340xx-lqx
options = !strip
source_i686 = http://us.download.nvidia.com/XFree86/Linux-x86/367.35/NVIDIA-Linux-x86-367.35.run
- md5sums_i686 = 42db6f6485c3c337c7c756380ec64b7a
+ source_i686 = 0001-linux-4.7-i686.patch
+ sha256sums_i686 = 38cb22fa85ef74ea960d3e5d644838cd961984ffc32bb0d052414cc7fa32e315
+ sha256sums_i686 = ca820f1cb77b377ca92f0298873ba04819fa9d33215392870ce159b39e639b37
source_x86_64 = http://us.download.nvidia.com/XFree86/Linux-x86_64/367.35/NVIDIA-Linux-x86_64-367.35-no-compat32.run
- md5sums_x86_64 = 24f1fc19fe10bcc6ff264fb5034c4ccc
+ source_x86_64 = 0001-linux-4.7-x86_64.patch
+ sha256sums_x86_64 = 8a6c554e9315e31e09d73fd60223ee4fbbe5507cd04c2e041c868a2080439354
+ sha256sums_x86_64 = 786dc522c4fe626acb30fac262bc7c2bc6580fd086d9985aa169399db4c6dfc1
pkgname = nvidia-lqx
diff --git a/0001-linux-4.7-i686.patch b/0001-linux-4.7-i686.patch
new file mode 100644
index 000000000000..ec91dc405454
--- /dev/null
+++ b/0001-linux-4.7-i686.patch
@@ -0,0 +1,46 @@
+diff -u -r nvidia-367.35-orig/nvidia-drm/nvidia-drm-fb.c nvidia-367.35/nvidia-drm/nvidia-drm-fb.c
+--- nvidia-367.35-orig/nvidia-drm/nvidia-drm-fb.c 2016-07-15 18:58:50.000000000 +0200
++++ nvidia-367.35/nvidia-drm/nvidia-drm-fb.c 2016-08-06 00:38:00.550651165 +0200
+@@ -31,6 +31,7 @@
+ #include "nvidia-drm-gem.h"
+
+ #include <drm/drm_crtc_helper.h>
++#include <linux/version.h>
+
+ static void nvidia_framebuffer_destroy(struct drm_framebuffer *fb)
+ {
+@@ -114,7 +115,11 @@
+ * We don't support any planar format, pick up first buffer only.
+ */
+
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,7,0)
++ gem = drm_gem_object_lookup(file, cmd->handles[0]);
++#else
+ gem = drm_gem_object_lookup(dev, file, cmd->handles[0]);
++#endif
+
+ if (gem == NULL)
+ {
+diff -u -r nvidia-367.35-orig/nvidia-drm/nvidia-drm-gem.c nvidia-367.35/nvidia-drm/nvidia-drm-gem.c
+--- nvidia-367.35-orig/nvidia-drm/nvidia-drm-gem.c 2016-07-15 18:58:50.000000000 +0200
++++ nvidia-367.35/nvidia-drm/nvidia-drm-gem.c 2016-08-06 00:37:47.237546102 +0200
+@@ -27,6 +27,7 @@
+ #include "nvidia-drm-priv.h"
+ #include "nvidia-drm-ioctl.h"
+ #include "nvidia-drm-gem.h"
++#include <linux/version.h>
+
+ static struct nvidia_drm_gem_object *nvidia_drm_gem_new
+ (
+@@ -408,7 +409,11 @@
+
+ mutex_lock(&dev->struct_mutex);
+
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,7,0)
++ gem = drm_gem_object_lookup(file, handle);
++#else
+ gem = drm_gem_object_lookup(dev, file, handle);
++#endif
+
+ if (gem == NULL)
+ {
diff --git a/0001-linux-4.7-x86_64.patch b/0001-linux-4.7-x86_64.patch
new file mode 100644
index 000000000000..981577115f0d
--- /dev/null
+++ b/0001-linux-4.7-x86_64.patch
@@ -0,0 +1,64 @@
+diff -u -r nvidia-367.35-orig/nvidia-drm/nvidia-drm-fb.c nvidia-367.35/nvidia-drm/nvidia-drm-fb.c
+--- nvidia-367.35-orig/nvidia-drm/nvidia-drm-fb.c 2016-07-15 18:58:50.000000000 +0200
++++ nvidia-367.35/nvidia-drm/nvidia-drm-fb.c 2016-08-06 00:38:00.550651165 +0200
+@@ -31,6 +31,7 @@
+ #include "nvidia-drm-gem.h"
+
+ #include <drm/drm_crtc_helper.h>
++#include <linux/version.h>
+
+ static void nvidia_framebuffer_destroy(struct drm_framebuffer *fb)
+ {
+@@ -114,7 +115,11 @@
+ * We don't support any planar format, pick up first buffer only.
+ */
+
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,7,0)
++ gem = drm_gem_object_lookup(file, cmd->handles[0]);
++#else
+ gem = drm_gem_object_lookup(dev, file, cmd->handles[0]);
++#endif
+
+ if (gem == NULL)
+ {
+diff -u -r nvidia-367.35-orig/nvidia-drm/nvidia-drm-gem.c nvidia-367.35/nvidia-drm/nvidia-drm-gem.c
+--- nvidia-367.35-orig/nvidia-drm/nvidia-drm-gem.c 2016-07-15 18:58:50.000000000 +0200
++++ nvidia-367.35/nvidia-drm/nvidia-drm-gem.c 2016-08-06 00:37:47.237546102 +0200
+@@ -27,6 +27,7 @@
+ #include "nvidia-drm-priv.h"
+ #include "nvidia-drm-ioctl.h"
+ #include "nvidia-drm-gem.h"
++#include <linux/version.h>
+
+ static struct nvidia_drm_gem_object *nvidia_drm_gem_new
+ (
+@@ -408,7 +409,11 @@
+
+ mutex_lock(&dev->struct_mutex);
+
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,7,0)
++ gem = drm_gem_object_lookup(file, handle);
++#else
+ gem = drm_gem_object_lookup(dev, file, handle);
++#endif
+
+ if (gem == NULL)
+ {
+diff -u -r nvidia-367.35-orig/nvidia-uvm/uvm_linux.h nvidia-367.35/nvidia-uvm/uvm_linux.h
+--- nvidia-367.35-orig/nvidia-uvm/uvm_linux.h 2016-07-15 18:58:50.000000000 +0200
++++ nvidia-367.35/nvidia-uvm/uvm_linux.h 2016-08-06 00:27:09.796678527 +0200
+@@ -554,12 +554,13 @@
+ INIT_RADIX_TREE(tree, GFP_NOWAIT);
+ }
+
++#if LINUX_VERSION_CODE < KERNEL_VERSION(4,7,0)
+ static bool radix_tree_empty(struct radix_tree_root *tree)
+ {
+ void *dummy;
+ return radix_tree_gang_lookup(tree, &dummy, 0, 1) == 0;
+ }
+-
++#endif
+
+ #if !defined(NV_USLEEP_RANGE_PRESENT)
+ static void __sched usleep_range(unsigned long min, unsigned long max)
diff --git a/PKGBUILD b/PKGBUILD
index 579ec8b71564..204cfcf6a9e8 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,33 +1,38 @@
-# Maintainer: Piotr Gorski <lucjan.lucjanov@gmail.com> PGP-Key: 78695CFD
-# Contributor: shivik <> PGP-Key: 761E4.6C
-# Contributor: Thomas Baechler <thomas@archlinux.org>
-
+# Maintainer: Piotr Gorski <lucjan.lucjanov@gmail.com>
+# Contributor: Lawliet <yanzilme@gmail.com>
+# Contributor: Felix Yan <felixonmars@gmail.com>
+
pkgname=nvidia-lqx
pkgver=367.35
-_extramodules=extramodules-4.6-lqx
-pkgrel=1
-pkgdesc="NVIDIA drivers for linux-lqx"
+_extramodules=extramodules-4.7-lqx
+pkgrel=2
+_pkgdesc="NVIDIA drivers for linux-lqx."
+pkgdesc="$_pkgdesc"
arch=('i686' 'x86_64')
url="http://www.nvidia.com/"
-depends=('linux-lqx>=4.6' 'linux-lqx<4.7' "nvidia-libgl" "nvidia-utils=${pkgver}")
-makedepends=('linux-lqx-headers>=4.6' 'linux-lqx-headers<4.7')
+depends=('linux-lqx>=4.7' 'linux-lqx<4.8' "nvidia-libgl" "nvidia-utils=${pkgver}")
+makedepends=('linux-lqx-headers>=4.7' 'linux-lqx-headers<4.8')
conflicts=('nvidia-304xx-lqx' 'nvidia-340xx-lqx')
license=('custom')
install=nvidia-lqx.install
options=(!strip)
-source_i686=("http://us.download.nvidia.com/XFree86/Linux-x86/${pkgver}/NVIDIA-Linux-x86-${pkgver}.run")
-source_x86_64=("http://us.download.nvidia.com/XFree86/Linux-x86_64/${pkgver}/NVIDIA-Linux-x86_64-${pkgver}-no-compat32.run")
-md5sums_i686=('42db6f6485c3c337c7c756380ec64b7a')
-md5sums_x86_64=('24f1fc19fe10bcc6ff264fb5034c4ccc')
+source_i686=("http://us.download.nvidia.com/XFree86/Linux-x86/${pkgver}/NVIDIA-Linux-x86-${pkgver}.run"
+"0001-linux-4.7-i686.patch")
+source_x86_64=("http://us.download.nvidia.com/XFree86/Linux-x86_64/${pkgver}/NVIDIA-Linux-x86_64-${pkgver}-no-compat32.run"
+"0001-linux-4.7-x86_64.patch")
+sha256sums_i686=('38cb22fa85ef74ea960d3e5d644838cd961984ffc32bb0d052414cc7fa32e315'
+ 'ca820f1cb77b377ca92f0298873ba04819fa9d33215392870ce159b39e639b37')
+sha256sums_x86_64=('8a6c554e9315e31e09d73fd60223ee4fbbe5507cd04c2e041c868a2080439354'
+ '786dc522c4fe626acb30fac262bc7c2bc6580fd086d9985aa169399db4c6dfc1')
[[ "$CARCH" = "i686" ]] && _pkg="NVIDIA-Linux-x86-${pkgver}"
[[ "$CARCH" = "x86_64" ]] && _pkg="NVIDIA-Linux-x86_64-${pkgver}-no-compat32"
prepare() {
sh "${_pkg}.run" --extract-only
cd "${_pkg}"
- # patches here
+ patch -Np1 -d kernel < ../0001-linux-4.7-${CARCH}.patch
}
-
+
build() {
_kernver="$(cat /usr/lib/modules/${_extramodules}/version)"
cd "${_pkg}/kernel"
@@ -43,7 +48,6 @@ package() {
"${pkgdir}/usr/lib/modules/${_extramodules}/nvidia-drm.ko"
-
if [[ "$CARCH" = "x86_64" ]]; then
install -D -m644 "${srcdir}/${_pkg}/kernel/nvidia-uvm.ko" \
"${pkgdir}/usr/lib/modules/${_extramodules}/nvidia-uvm.ko"
@@ -51,5 +55,5 @@ package() {
gzip -9 "${pkgdir}/usr/lib/modules/${_extramodules}/"*.ko
install -dm755 "${pkgdir}/usr/lib/modprobe.d"
- echo "blacklist nouveau" >> "${pkgdir}/usr/lib/modprobe.d/nvidia-lqx.conf"
+ echo "blacklist nouveau" >> "${pkgdir}/usr/lib/modprobe.d/nvidia-lqx.conf"
}
diff --git a/nvidia-lqx.install b/nvidia-lqx.install
index 3460632b92ea..80b359ce5a30 100644
--- a/nvidia-lqx.install
+++ b/nvidia-lqx.install
@@ -1,7 +1,7 @@
post_install() {
- EXTRAMODULES='extramodules-4.6-lqx'
- depmod $(cat /usr/lib/modules/${EXTRAMODULES}/version)
- echo 'In order to use nvidia module, reboot the system.'
+ EXTRAMODULES='extramodules-4.7-lqx'
+ depmod $(cat /usr/lib/modules/${EXTRAMODULES}/version)
+ echo 'In order to use nvidia module, reboot the system.'
}
post_upgrade() {