summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorJason Stryker2021-05-07 20:26:16 -0400
committerJason Stryker2021-05-07 20:26:16 -0400
commit58abb6e05f472513fbb836d5a0f03d7294fcbab1 (patch)
treed4e742a4172ac9ce62f96e9ebaa820b6eacd577a
parent0a5b31e07f4279e46d5e89bc15055c781acb6217 (diff)
downloadaur-58abb6e05f472513fbb836d5a0f03d7294fcbab1.tar.gz
add patch for kernel 5.12
-rw-r--r--.SRCINFO2
-rw-r--r--PKGBUILD7
-rw-r--r--kernel-5.12.patch30
3 files changed, 37 insertions, 2 deletions
diff --git a/.SRCINFO b/.SRCINFO
index e6eb42fc7ca0..2a288b9d52cc 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -13,10 +13,12 @@ pkgbase = nvidia-vulkan
source = nvidia-drm-outputclass.conf
source = nvidia-vulkan-utils.sysusers
source = kernel-5.11.patch
+ source = kernel-5.12.patch
sha512sums = f8d24f70ea6e8d6078ef366539988022a9ef0ba0fde6c51233bf3cf860731ec2c07d3ac1013d0c0e9e4aa2c642999f58cd43546fa2c2c72325e02af2a75751e1
sha512sums = de7116c09f282a27920a1382df84aa86f559e537664bb30689605177ce37dc5067748acf9afd66a3269a6e323461356592fdfc624c86523bf105ff8fe47d3770
sha512sums = 4b3ad73f5076ba90fe0b3a2e712ac9cde76f469cd8070280f960c3ce7dc502d1927f525ae18d008075c8f08ea432f7be0a6c3a7a6b49c361126dcf42f97ec499
sha512sums = 6409fdc44f441be1bdf30bd78de35f49ed3970a9496e265ac9f45db9760bdcb0736ecb5a7342e97b57c62c0f69b403f52e7ca69b2360e64a559a44fe0a809896
+ sha512sums = 48cf6c8fed66c0bc075b929a598ebe3457f868c4df264565935cbeed6cc0d5235498143c13044c74c5a435088936afaf5409e9d53765aad042e063032b52baff
pkgname = nvidia-vulkan
pkgdesc = NVIDIA drivers for linux (vulkan developer branch)
diff --git a/PKGBUILD b/PKGBUILD
index 596bc8816126..c06ab9ffe54e 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -20,11 +20,13 @@ _pkg="NVIDIA-Linux-x86_64-${pkgver}"
source=("${_pkg}.run::https://developer.nvidia.com/vulkan-beta-${pkgver//.}-linux"
'nvidia-drm-outputclass.conf'
'nvidia-vulkan-utils.sysusers'
- 'kernel-5.11.patch')
+ 'kernel-5.11.patch'
+ 'kernel-5.12.patch')
sha512sums=('f8d24f70ea6e8d6078ef366539988022a9ef0ba0fde6c51233bf3cf860731ec2c07d3ac1013d0c0e9e4aa2c642999f58cd43546fa2c2c72325e02af2a75751e1'
'de7116c09f282a27920a1382df84aa86f559e537664bb30689605177ce37dc5067748acf9afd66a3269a6e323461356592fdfc624c86523bf105ff8fe47d3770'
'4b3ad73f5076ba90fe0b3a2e712ac9cde76f469cd8070280f960c3ce7dc502d1927f525ae18d008075c8f08ea432f7be0a6c3a7a6b49c361126dcf42f97ec499'
- '6409fdc44f441be1bdf30bd78de35f49ed3970a9496e265ac9f45db9760bdcb0736ecb5a7342e97b57c62c0f69b403f52e7ca69b2360e64a559a44fe0a809896')
+ '6409fdc44f441be1bdf30bd78de35f49ed3970a9496e265ac9f45db9760bdcb0736ecb5a7342e97b57c62c0f69b403f52e7ca69b2360e64a559a44fe0a809896'
+ '48cf6c8fed66c0bc075b929a598ebe3457f868c4df264565935cbeed6cc0d5235498143c13044c74c5a435088936afaf5409e9d53765aad042e063032b52baff')
create_links() {
# create soname links
@@ -42,6 +44,7 @@ prepare() {
bsdtar -xf nvidia-persistenced-init.tar.bz2
patch -Np1 -i ../kernel-5.11.patch
+ patch -Np1 -i ../kernel-5.12.patch
# Fixing regex pattern for Module.symvers
sed -i "s/${TAB}vmlinux/${TAB}*vmlinux/g" kernel/conftest.sh
diff --git a/kernel-5.12.patch b/kernel-5.12.patch
new file mode 100644
index 000000000000..a9337f18fcc5
--- /dev/null
+++ b/kernel-5.12.patch
@@ -0,0 +1,30 @@
+diff --git a/kernel/nvidia-drm/nvidia-drm-drv.c b/kernel/nvidia-drm/nvidia-drm-drv.c
+index ef89513..7f0707d 100644
+--- a/kernel/nvidia-drm/nvidia-drm-drv.c
++++ b/kernel/nvidia-drm/nvidia-drm-drv.c
+@@ -855,7 +855,9 @@ static void nv_drm_update_drm_driver_features(void)
+
+ nv_drm_driver.dumb_create = nv_drm_dumb_create;
+ nv_drm_driver.dumb_map_offset = nv_drm_dumb_map_offset;
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 12, 0))
+ nv_drm_driver.dumb_destroy = drm_gem_dumb_destroy;
++#endif
+ #endif /* NV_DRM_ATOMIC_MODESET_AVAILABLE */
+ }
+
+diff --git a/kernel/nvidia-drm/nvidia-drm-gem-user-memory.c b/kernel/nvidia-drm/nvidia-drm-gem-user-memory.c
+index 89ab321..f29b644 100644
+--- a/kernel/nvidia-drm/nvidia-drm-gem-user-memory.c
++++ b/kernel/nvidia-drm/nvidia-drm-gem-user-memory.c
+@@ -208,7 +208,11 @@ struct nv_drm_gem_user_memory *nv_drm_gem_user_memory_import_sg_table(
+ return NULL;
+ }
+
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 12, 0))
+ if (drm_prime_sg_to_page_addr_arrays(sgt, pages, NULL, pages_count) < 0) {
++#else
++ if (drm_prime_sg_to_page_array(sgt, pages, pages_count) < 0) {
++#endif
+ nv_drm_free(nv_user_memory);
+ nv_drm_free(pages);
+ return NULL;