summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorgraysky2019-05-16 15:35:51 -0400
committergraysky2019-05-16 15:35:51 -0400
commitb8cfc3a6abc88b133d13c1da81197e1a23768f5f (patch)
treec36404ac2a103ee5a825da92471eb7e458f95f6b
parentb93b2e1994595931694f4e8c5bd9e2294f28f2b5 (diff)
downloadaur-b8cfc3a6abc88b133d13c1da81197e1a23768f5f.tar.gz
Update to 390.116-19
-rw-r--r--.SRCINFO4
-rw-r--r--PKGBUILD13
-rw-r--r--kernel-5.1.patch130
3 files changed, 140 insertions, 7 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 4c51b7a90ba..0a43b37cc03 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = nvidia-390xx-ck
pkgdesc = NVIDIA drivers for linux-ck, 390xx legacy branch.
pkgver = 390.116
- pkgrel = 18
+ pkgrel = 19
url = http://www.nvidia.com/
arch = x86_64
license = custom
@@ -16,8 +16,10 @@ pkgbase = nvidia-390xx-ck
options = !strip
source = http://us.download.nvidia.com/XFree86/Linux-x86_64/390.116/NVIDIA-Linux-x86_64-390.116-no-compat32.run
source = kernel-4.16.patch
+ source = kernel-5.1.patch
sha256sums = de85a2eea39ca16e25645b345259b01fbe858b833286b7e6785afa273009ef6f
sha256sums = 622ac792ec200b2239cb663c0010392118b78c9904973d82cd261165c16d6385
+ sha256sums = d92899d4f7a40e2c3cad92d067f2f53c3a18c49b34e62e707a93b125aa37640f
pkgname = nvidia-390xx-ck
diff --git a/PKGBUILD b/PKGBUILD
index fb37bfcda7a..8da18b71b8b 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -4,7 +4,7 @@
pkgname=nvidia-390xx-ck
pkgver=390.116
-pkgrel=18
+pkgrel=19
_extramodules=extramodules-ck
_pkgdesc="NVIDIA drivers for linux-ck, 390xx legacy branch."
pkgdesc="$_pkgdesc"
@@ -18,19 +18,20 @@ conflicts=('nvidia-340xx-ck' 'nvidia-ck')
license=('custom')
options=('!strip')
source=("http://us.download.nvidia.com/XFree86/Linux-x86_64/${pkgver}/NVIDIA-Linux-x86_64-${pkgver}-no-compat32.run"
-kernel-4.16.patch)
+'kernel-4.16.patch' 'kernel-5.1.patch')
sha256sums=('de85a2eea39ca16e25645b345259b01fbe858b833286b7e6785afa273009ef6f'
- '622ac792ec200b2239cb663c0010392118b78c9904973d82cd261165c16d6385')
+ '622ac792ec200b2239cb663c0010392118b78c9904973d82cd261165c16d6385'
+ 'd92899d4f7a40e2c3cad92d067f2f53c3a18c49b34e62e707a93b125aa37640f')
_pkg="NVIDIA-Linux-x86_64-${pkgver}-no-compat32"
prepare() {
sh "${_pkg}.run" --extract-only
cd "${_pkg}"
+ # patches here
- # Restore phys_to_dma support (still needed for 396.18)
- # https://bugs.archlinux.org/task/58074
- patch -Np1 -i ../kernel-4.16.patch
+ patch -Np0 < "${srcdir}/kernel-4.16.patch"
+ patch -Np0 < "${srcdir}/kernel-5.1.patch"
}
build() {
diff --git a/kernel-5.1.patch b/kernel-5.1.patch
new file mode 100644
index 00000000000..172ff48e9b9
--- /dev/null
+++ b/kernel-5.1.patch
@@ -0,0 +1,130 @@
+diff --git a/kernel/common/inc/nv-list-helpers.h b/kernel/common/inc/nv-list-helpers.h
+index 0aed851..d6304c9 100644
+--- a/kernel/common/inc/nv-list-helpers.h
++++ b/kernel/common/inc/nv-list-helpers.h
+@@ -26,6 +26,8 @@
+ #include <linux/list.h>
+ #include "conftest.h"
+
++#include <linux/version.h>
++
+ #if !defined (list_for_each)
+ #define list_for_each(pos, head) \
+ for (pos = (head)->next; pos != (head); pos = (pos)->next)
+@@ -91,10 +93,12 @@
+ list_entry((pos)->member.next, typeof(*(pos)), member)
+ #endif
+
++#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 1, 0)
+ static inline int list_is_first(const struct list_head *list,
+ const struct list_head *head)
+ {
+ return list->prev == head;
+ }
++#endif
+
+ #endif // __NV_LIST_HELPERS_H__
+diff --git a/kernel/nvidia-drm/nvidia-drm-connector.c b/kernel/nvidia-drm/nvidia-drm-connector.c
+index 24631c0..ba1497c 100644
+--- a/kernel/nvidia-drm/nvidia-drm-connector.c
++++ b/kernel/nvidia-drm/nvidia-drm-connector.c
+@@ -30,7 +30,12 @@
+ #include "nvidia-drm-utils.h"
+ #include "nvidia-drm-encoder.h"
+
++#include <linux/version.h>
++#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 1, 0)
+ #include <drm/drm_crtc_helper.h>
++#else
++#include <drm/drm_probe_helper.h>
++#endif
+
+ #include <drm/drm_atomic.h>
+ #include <drm/drm_atomic_helper.h>
+diff --git a/kernel/nvidia-drm/nvidia-drm-drv.c b/kernel/nvidia-drm/nvidia-drm-drv.c
+index 1c2db68..d524d51 100644
+--- a/kernel/nvidia-drm/nvidia-drm-drv.c
++++ b/kernel/nvidia-drm/nvidia-drm-drv.c
+@@ -41,7 +41,12 @@
+
+ #include <drm/drmP.h>
+
++#include <linux/version.h>
++#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 1, 0)
+ #include <drm/drm_crtc_helper.h>
++#else
++#include <drm/drm_probe_helper.h>
++#endif
+
+ #if defined(NV_DRM_DRM_GEM_H_PRESENT)
+ #include <drm/drm_gem.h>
+diff --git a/kernel/nvidia-drm/nvidia-drm-encoder.c b/kernel/nvidia-drm/nvidia-drm-encoder.c
+index f66bbd7..df38042 100644
+--- a/kernel/nvidia-drm/nvidia-drm-encoder.c
++++ b/kernel/nvidia-drm/nvidia-drm-encoder.c
+@@ -31,7 +31,12 @@
+ #include "nvidia-drm-crtc.h"
+ #include "nvidia-drm-helper.h"
+
++#include <linux/version.h>
++#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 1, 0)
+ #include <drm/drm_crtc_helper.h>
++#else
++#include <drm/drm_probe_helper.h>
++#endif
+
+ #include <drm/drm_atomic.h>
+ #include <drm/drm_atomic_helper.h>
+diff --git a/kernel/nvidia-drm/nvidia-drm-gem-nvkms-memory.c b/kernel/nvidia-drm/nvidia-drm-gem-nvkms-memory.c
+index 8636eff..fd0c8da 100644
+--- a/kernel/nvidia-drm/nvidia-drm-gem-nvkms-memory.c
++++ b/kernel/nvidia-drm/nvidia-drm-gem-nvkms-memory.c
+@@ -29,6 +29,8 @@
+
+ #include "nv-mm.h"
+
++#include <linux/version.h>
++
+ static void __nv_drm_gem_nvkms_memory_free(struct nv_drm_gem_object *nv_gem)
+ {
+ struct nv_drm_device *nv_dev = nv_gem->nv_dev;
+@@ -268,7 +270,11 @@ static int __nv_drm_vma_fault(struct vm_area_struct *vma,
+ */
+
+ #if defined(NV_VM_OPS_FAULT_REMOVED_VMA_ARG)
++#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 1, 0)
+ static int nv_drm_vma_fault(struct vm_fault *vmf)
++#else
++static vm_fault_t nv_drm_vma_fault(struct vm_fault *vmf)
++#endif
+ {
+ return __nv_drm_vma_fault(vmf->vma, vmf);
+ }
+diff --git a/kernel/nvidia-uvm/uvm8.c b/kernel/nvidia-uvm/uvm8.c
+index e00923d..2e01e3c 100644
+--- a/kernel/nvidia-uvm/uvm8.c
++++ b/kernel/nvidia-uvm/uvm8.c
+@@ -172,7 +172,11 @@ static int uvm_vm_fault_sigbus(struct vm_area_struct *vma, struct vm_fault *vmf)
+ return VM_FAULT_SIGBUS;
+ }
+
++#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 1, 0)
+ static int uvm_vm_fault_sigbus_wrapper(struct vm_fault *vmf)
++#else
++static vm_fault_t uvm_vm_fault_sigbus_wrapper(struct vm_fault *vmf)
++#endif
+ {
+ #if defined(NV_VM_OPS_FAULT_REMOVED_VMA_ARG)
+ return uvm_vm_fault_sigbus(vmf->vma, vmf);
+@@ -507,7 +511,11 @@ convert_error:
+ }
+ }
+
++#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 1, 0)
+ static int uvm_vm_fault_wrapper(struct vm_fault *vmf)
++#else
++static vm_fault_t uvm_vm_fault_wrapper(struct vm_fault *vmf)
++#endif
+ {
+ #if defined(NV_VM_OPS_FAULT_REMOVED_VMA_ARG)
+ return uvm_vm_fault(vmf->vma, vmf);