summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorBalló György2016-07-16 20:39:11 +0200
committerBalló György2016-07-16 20:39:11 +0200
commite58a0bc5e75ce013353678121137a722aba68555 (patch)
tree388ee7e68bb41486ba977919c43aabc7a4f2e1f8
parentf213992ff6ed3b1841d60d5a1d4c8c981a87c124 (diff)
downloadaur-e58a0bc5e75ce013353678121137a722aba68555.tar.gz
upgpkg: nvidia-173xx-dkms 173.14.39-8
Update for linux 4.6
-rw-r--r--.SRCINFO6
-rw-r--r--PKGBUILD5
-rw-r--r--linux-4.6.patch134
3 files changed, 142 insertions, 3 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 1dd537b6d3e1..2983941b0d67 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,9 +1,9 @@
# Generated by mksrcinfo v8
-# Tue Apr 26 15:27:52 UTC 2016
+# Sat Jul 16 18:39:10 UTC 2016
pkgbase = nvidia-173xx-dkms
pkgdesc = NVIDIA kernel module sources (DKMS), 173xx branch
pkgver = 173.14.39
- pkgrel = 7
+ pkgrel = 8
url = http://www.nvidia.com/
arch = i686
arch = x86_64
@@ -22,12 +22,14 @@ pkgbase = nvidia-173xx-dkms
source = linux-3.19.patch
source = linux-4.0.patch
source = linux-4.3.patch
+ source = linux-4.6.patch
source = dkms.conf
md5sums = 6dfb34d8fdf35c1637932f95d2216c46
md5sums = a2042d1f47d3f7c8b380237bd0b35863
md5sums = be7d8583f27021dde68e87239d547457
md5sums = c84147f5645290b6d840e987e5413536
md5sums = 20bde657bb715e16295d7e82fe799fca
+ md5sums = a5b751e62ee8caba525c059035568422
md5sums = d784fa643442852babc56f60705387a4
pkgname = nvidia-173xx-dkms
diff --git a/PKGBUILD b/PKGBUILD
index e76252a2464e..45b5f839633b 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -5,7 +5,7 @@
pkgname=nvidia-173xx-dkms
pkgver=173.14.39
-pkgrel=7
+pkgrel=8
pkgdesc="NVIDIA kernel module sources (DKMS), 173xx branch"
arch=('i686' 'x86_64')
[ "$CARCH" = "i686" ] && _arch=x86
@@ -24,6 +24,7 @@ source=("http://us.download.nvidia.com/XFree86/Linux-${_arch}/${pkgver}/${_pkg}.
linux-3.19.patch
linux-4.0.patch
linux-4.3.patch
+ linux-4.6.patch
dkms.conf)
options=(!strip)
[ "$CARCH" = "i686" ] && md5sums=('5b423543428554ef33a200fbbe3cb9fc')
@@ -33,6 +34,7 @@ md5sums+=('6dfb34d8fdf35c1637932f95d2216c46'
'be7d8583f27021dde68e87239d547457'
'c84147f5645290b6d840e987e5413536'
'20bde657bb715e16295d7e82fe799fca'
+ 'a5b751e62ee8caba525c059035568422'
'd784fa643442852babc56f60705387a4')
prepare() {
@@ -48,6 +50,7 @@ prepare() {
patch -p1 -i "$srcdir/linux-3.19.patch"
patch -p1 -i "$srcdir/linux-4.0.patch"
patch -p1 -i "$srcdir/linux-4.3.patch"
+ patch -p1 -i "$srcdir/linux-4.6.patch"
}
package() {
diff --git a/linux-4.6.patch b/linux-4.6.patch
new file mode 100644
index 000000000000..90fc54165b77
--- /dev/null
+++ b/linux-4.6.patch
@@ -0,0 +1,134 @@
+diff -Naur nv.orig/conftest.sh nv/conftest.sh
+--- nv.orig/conftest.sh 2016-07-16 20:25:07.153494000 +0200
++++ nv/conftest.sh 2016-07-16 20:27:16.887189475 +0200
+@@ -651,7 +651,7 @@
+ # a match() member.
+ #
+ echo "$CONFTEST_PREAMBLE
+- #include <acpi/acpi_bus.h>
++ #include <linux/acpi.h>
+ int conftest_acpi_device_ops(void) {
+ return offsetof(struct acpi_device_ops, match);
+ }" > conftest$$.c
+@@ -669,13 +669,49 @@
+ fi
+ ;;
+
++ acpi_op_remove)
++ #
++ # Determine the number of arguments to pass to the
++ # 'acpi_op_remove' routine.
++ #
++
++ echo "$CONFTEST_PREAMBLE
++ #include <linux/acpi.h>
++
++ acpi_op_remove conftest_op_remove_routine;
++
++ int conftest_acpi_device_ops_remove(struct acpi_device *device) {
++ return conftest_op_remove_routine(device);
++ }" > conftest$$.c
++
++ $CC $CFLAGS -c conftest$$.c > /dev/null 2>&1
++ rm -f conftest$$.c
++
++ if [ -f conftest$$.o ]; then
++ rm -f conftest$$.o
++ echo "#define NV_ACPI_DEVICE_OPS_REMOVE_ARGUMENT_COUNT 1" >> conftest.h
++ return
++ fi
++
++ CODE="
++ #include <linux/acpi.h>
++
++ acpi_op_remove conftest_op_remove_routine;
++
++ int conftest_acpi_device_ops_remove(struct acpi_device *device, int type) {
++ return conftest_op_remove_routine(device, type);
++ }"
++
++ compile_check_conftest "$CODE" "NV_ACPI_DEVICE_OPS_REMOVE_ARGUMENT_COUNT" "2" "types"
++ ;;
++
+ acpi_device_id)
+ #
+ # Determine if the 'acpi_device_id' structure has
+ # a 'driver_data' member.
+ #
+ echo "$CONFTEST_PREAMBLE
+- #include <acpi/acpi_drivers.h>
++ #include <linux/acpi.h>
+ int conftest_acpi_device_id(void) {
+ return offsetof(struct acpi_device_id, driver_data);
+ }" > conftest$$.c
+@@ -893,7 +929,7 @@
+ #
+
+ echo "$CONFTEST_PREAMBLE
+- #include <acpi/acpi_bus.h>
++ #include <linux/acpi.h>
+ acpi_status acpi_evaluate_integer(acpi_handle h, acpi_string s,
+ struct acpi_object_list *l, unsigned long long *d) {
+ return AE_OK;
+@@ -910,7 +946,7 @@
+ fi
+
+ echo "$CONFTEST_PREAMBLE
+- #include <acpi/acpi_bus.h>
++ #include <linux/acpi.h>
+ acpi_status acpi_evaluate_integer(acpi_handle h, acpi_string s,
+ struct acpi_object_list *l, unsigned long *d) {
+ return AE_OK;
+diff -Naur nv.orig/Makefile.kbuild nv/Makefile.kbuild
+--- nv.orig/Makefile.kbuild 2016-07-16 20:25:07.150161000 +0200
++++ nv/Makefile.kbuild 2016-07-16 20:34:59.820895692 +0200
+@@ -153,6 +153,7 @@
+ pci_choose_state \
+ vm_insert_page \
+ acpi_device_ops \
++ acpi_op_remove \
+ acpi_device_id \
+ acquire_console_sem \
+ kmem_cache_create \
+diff -Naur nv.orig/nvacpi.c nv/nvacpi.c
+--- nv.orig/nvacpi.c 2016-07-16 20:25:07.150161000 +0200
++++ nv/nvacpi.c 2016-07-16 20:29:08.010416632 +0200
+@@ -30,7 +30,11 @@
+ *
+ */
+ static int nv_acpi_add (struct acpi_device *device);
+-static int nv_acpi_remove (struct acpi_device *device, int type);
++#if !defined(NV_ACPI_DEVICE_OPS_REMOVE_ARGUMENT_COUNT) || (NV_ACPI_DEVICE_OPS_REMOVE_ARGUMENT_COUNT == 2)
++static int nv_acpi_remove_two_args(struct acpi_device *device, int type);
++#else
++static int nv_acpi_remove_one_arg(struct acpi_device *device);
++#endif
+ static void nv_acpi_event (acpi_handle, u32, void *);
+
+ #if defined(NV_ACPI_DEVICE_OPS_HAS_MATCH)
+@@ -64,7 +68,11 @@
+ #endif
+ .ops = {
+ .add = nv_acpi_add,
+- .remove = nv_acpi_remove,
++#if !defined(NV_ACPI_DEVICE_OPS_REMOVE_ARGUMENT_COUNT) || (NV_ACPI_DEVICE_OPS_REMOVE_ARGUMENT_COUNT == 2)
++ .remove = nv_acpi_remove_two_args,
++#else
++ .remove = nv_acpi_remove_one_arg,
++#endif
+ #if defined(NV_ACPI_DEVICE_OPS_HAS_MATCH)
+ .match = nv_acpi_match,
+ #endif
+@@ -234,7 +242,11 @@
+ return 0;
+ }
+
+-static int nv_acpi_remove(struct acpi_device *device, int type)
++#if !defined(NV_ACPI_DEVICE_OPS_REMOVE_ARGUMENT_COUNT) || (NV_ACPI_DEVICE_OPS_REMOVE_ARGUMENT_COUNT == 2)
++static int nv_acpi_remove_two_args(struct acpi_device *device, int type)
++#else
++static int nv_acpi_remove_one_arg(struct acpi_device *device)
++#endif
+ {
+ /*
+ * This function will cause RM to relinquish control of the VGA ACPI device.