diff options
-rw-r--r-- | metadata/md5-cache/sys-kernel/nvidia-drivers-legacy-dkms-390.144-r1 (renamed from metadata/md5-cache/sys-kernel/nvidia-drivers-legacy-dkms-390.144) | 2 | ||||
-rw-r--r-- | metadata/md5-cache/x11-drivers/nvidia-drivers-legacy-390.144-r3 (renamed from metadata/md5-cache/x11-drivers/nvidia-drivers-legacy-390.144-r2) | 2 | ||||
-rw-r--r-- | metadata/pkg_desc_index | 4 | ||||
-rw-r--r-- | sys-kernel/nvidia-drivers-legacy-dkms/files/kernel-5.14.patch | 82 | ||||
-rw-r--r-- | sys-kernel/nvidia-drivers-legacy-dkms/nvidia-drivers-legacy-dkms-390.144-r1.ebuild (renamed from sys-kernel/nvidia-drivers-legacy-dkms/nvidia-drivers-legacy-dkms-390.144.ebuild) | 1 | ||||
-rw-r--r-- | x11-drivers/nvidia-drivers-legacy/files/kernel-5.14.patch | 82 | ||||
-rw-r--r-- | x11-drivers/nvidia-drivers-legacy/nvidia-drivers-legacy-390.144-r3.ebuild (renamed from x11-drivers/nvidia-drivers-legacy/nvidia-drivers-legacy-390.144-r2.ebuild) | 1 |
7 files changed, 170 insertions, 4 deletions
diff --git a/metadata/md5-cache/sys-kernel/nvidia-drivers-legacy-dkms-390.144 b/metadata/md5-cache/sys-kernel/nvidia-drivers-legacy-dkms-390.144-r1 index ed5d66ec..f6548166 100644 --- a/metadata/md5-cache/sys-kernel/nvidia-drivers-legacy-dkms-390.144 +++ b/metadata/md5-cache/sys-kernel/nvidia-drivers-legacy-dkms-390.144-r1 @@ -9,4 +9,4 @@ RDEPEND=sys-kernel/dkms !!sys-kernel/nvidia-drivers-dkms SLOT=0 SRC_URI=amd64? ( http://us.download.nvidia.com/XFree86/Linux-x86_64/390.144/NVIDIA-Linux-x86_64-390.144.run ) _eclasses_=desktop c0d27bf73aa08ca05b663dbd31fbef28 edos2unix 33e347e171066657f91f8b0c72ec8773 epatch 9f813bb3c47cf2e60619a663b87c5f4e estack 055c42df72f76a4f45ec92b35e83cd56 eutils dab5d8ec471d025b79c9e6906bcf3bff ltprune 4f3f2db5ce3ccbeeacdf3f94954043aa multilib 4b66d835ec72e021e359bb81eacfe988 preserve-libs dbc9f8d2d49c66467bc327fddd8317bd strip-linguas ac3ee41ee2d31d8c41a77c0838320cc7 toolchain-funcs 9ea1c67b6f8315fdc2568abb674519aa vcs-clean b690a7e9b6c497cf59326a7545df4283 wrapper 4251d4c84c25f59094fd557e0063a974 -_md5_=3ee78272c14f43bb7f09b013dfe31bb8 +_md5_=85c16e3e6bd9d110a90a9cf35f8ce0b4 diff --git a/metadata/md5-cache/x11-drivers/nvidia-drivers-legacy-390.144-r2 b/metadata/md5-cache/x11-drivers/nvidia-drivers-legacy-390.144-r3 index 2af13ad1..841e1f9f 100644 --- a/metadata/md5-cache/x11-drivers/nvidia-drivers-legacy-390.144-r2 +++ b/metadata/md5-cache/x11-drivers/nvidia-drivers-legacy-390.144-r3 @@ -12,4 +12,4 @@ RESTRICT=bindist mirror SLOT=0 SRC_URI=amd64? ( http://http.download.nvidia.com/XFree86/Linux-x86_64/390.144/NVIDIA-Linux-x86_64-390.144.run ) _eclasses_=desktop c0d27bf73aa08ca05b663dbd31fbef28 edos2unix 33e347e171066657f91f8b0c72ec8773 epatch 9f813bb3c47cf2e60619a663b87c5f4e estack 055c42df72f76a4f45ec92b35e83cd56 eutils dab5d8ec471d025b79c9e6906bcf3bff flag-o-matic 4134b5c0fb719b9161d10bdaba9e09e5 ltprune 4f3f2db5ce3ccbeeacdf3f94954043aa multibuild 05a584848db4901c97fcd94ae7cc3a97 multilib 4b66d835ec72e021e359bb81eacfe988 multilib-build 19ec165e9adcaa4c132b9e3fe3e7f556 multilib-minimal be5919734a8448dddd49c2b26db45091 portability d1186f1e621de7b27ddcae82e6253259 preserve-libs dbc9f8d2d49c66467bc327fddd8317bd strip-linguas ac3ee41ee2d31d8c41a77c0838320cc7 toolchain-funcs 9ea1c67b6f8315fdc2568abb674519aa unpacker 928e1f35ef78ba9fc2b214e29c2b55a4 vcs-clean b690a7e9b6c497cf59326a7545df4283 wrapper 4251d4c84c25f59094fd557e0063a974 -_md5_=d95baba754fc86f3c53eea257a8fb381 +_md5_=871067e65302787e187d137e9ec3ad04 diff --git a/metadata/pkg_desc_index b/metadata/pkg_desc_index index ee24eb0e..ccd33be3 100644 --- a/metadata/pkg_desc_index +++ b/metadata/pkg_desc_index @@ -71,7 +71,7 @@ sys-kernel/linux-sources-redcore 5.13.15 5.14.2: Redcore Linux Kernel Sources sys-kernel/linux-sources-redcore-lts 5.10.63: Redcore Linux Kernel Sources (LTS) sys-kernel/linux-sources-redcore-lts-legacy 5.4.144: Redcore Linux Kernel Sources (LTS Legacy 5.4) sys-kernel/nvidia-drivers-dkms 470.63.01: NVIDIA driver sources for linux -sys-kernel/nvidia-drivers-legacy-dkms 390.144: NVIDIA driver sources for linux +sys-kernel/nvidia-drivers-legacy-dkms 390.144-r1: NVIDIA driver sources for linux sys-kernel/rtl8821cu-dkms 5.8.1: Realtek RTL8811CU/RTL8821CU USB Wi-Fi adapter driver for Linux sys-kernel/vhba-dkms 20190831: Virtual (SCSI) Host Bus Adapter kernel module for the CDEmu suite sources sys-kernel/virtualbox-modules-dkms 6.1.18-r1: Kernel Modules source for Virtualbox @@ -90,7 +90,7 @@ x11-base/xorg-drivers 1.20-r100: Meta package containing deps on all xorg driver x11-base/xorg-server 1.20.13-r100: X.Org X servers x11-base/xwayland 21.1.2-r100: Standalone X server running under Wayland x11-drivers/nvidia-drivers 470.63.01: NVIDIA Accelerated Graphics Driver -x11-drivers/nvidia-drivers-legacy 390.144-r2: NVIDIA Accelerated Graphics Driver +x11-drivers/nvidia-drivers-legacy 390.144-r3: NVIDIA Accelerated Graphics Driver x11-libs/gtk+ 2.24.33-r10 3.24.29-r10: Gimp ToolKit + x11-misc/nvidia-prime 314: NVIDIA Prime Render Offload configuration and utilities x11-misc/nvidia-settings 470.63.01: NVIDIA Linux X11 Settings Utility diff --git a/sys-kernel/nvidia-drivers-legacy-dkms/files/kernel-5.14.patch b/sys-kernel/nvidia-drivers-legacy-dkms/files/kernel-5.14.patch new file mode 100644 index 00000000..a4242ec7 --- /dev/null +++ b/sys-kernel/nvidia-drivers-legacy-dkms/files/kernel-5.14.patch @@ -0,0 +1,82 @@ +Taken from https://build.opensuse.org/package/view_file/X11:Drivers:Video/nvidia-gfxG04/kernel-5.14.patch?rev=233 +Credit to Stefan Dirsch <sndirsch@suse.com> + +diff -u -p -r NVIDIA-Linux-x86_64-390.144/kernel.orig/conftest.sh NVIDIA-Linux-x86_64-390.144/kernel/conftest.sh +--- NVIDIA-Linux-x86_64-390.144/kernel.orig/conftest.sh 2021-08-31 16:58:57.799629833 +0200 ++++ NVIDIA-Linux-x86_64-390.144/kernel/conftest.sh 2021-08-31 18:00:09.257825534 +0200 +@@ -4493,6 +4493,30 @@ compile_test() { + fi + ;; + ++ drm_device_has_pdev) ++ # ++ # Determine if the 'drm_device' structure has a 'pdev' field. ++ # ++ # Removed by commit b347e04452ff ("drm: Remove pdev field from ++ # struct drm_device") in v5.14-rc1. ++ # ++ CODE=" ++ #if defined(NV_DRM_DRMP_H_PRESENT) ++ #include <drm/drmP.h> ++ #endif ++ ++ #if defined(NV_DRM_DRM_DEVICE_H_PRESENT) ++ #include <drm/drm_device.h> ++ #endif ++ ++ int conftest_drm_device_has_pdev(void) { ++ return offsetof(struct drm_device, pdev); ++ }" ++ ++ compile_check_conftest "$CODE" "NV_DRM_DEVICE_HAS_PDEV" "" "types" ++ ;; ++ ++ + esac + } + +diff -u -p -r NVIDIA-Linux-x86_64-390.144/kernel.orig/nvidia/nvlink_linux.c NVIDIA-Linux-x86_64-390.144/kernel/nvidia/nvlink_linux.c +--- NVIDIA-Linux-x86_64-390.144/kernel.orig/nvidia/nvlink_linux.c 2021-08-31 16:58:57.787629590 +0200 ++++ NVIDIA-Linux-x86_64-390.144/kernel/nvidia/nvlink_linux.c 2021-08-31 17:51:49.207744327 +0200 +@@ -597,7 +597,7 @@ void NVLINK_API_CALL nvlink_sleep(unsign + // the requested timeout has expired, loop until less + // than a jiffie of the desired delay remains. + // +- current->state = TASK_INTERRUPTIBLE; ++ set_current_state(TASK_INTERRUPTIBLE); + do + { + schedule_timeout(jiffies); +diff -u -p -r NVIDIA-Linux-x86_64-390.144/kernel.orig/nvidia/os-interface.c NVIDIA-Linux-x86_64-390.144/kernel/nvidia/os-interface.c +--- NVIDIA-Linux-x86_64-390.144/kernel.orig/nvidia/os-interface.c 2021-08-31 16:58:57.787629590 +0200 ++++ NVIDIA-Linux-x86_64-390.144/kernel/nvidia/os-interface.c 2021-08-31 17:51:58.043922420 +0200 +@@ -580,7 +580,7 @@ NV_STATUS NV_API_CALL os_delay(NvU32 Mil + // the requested timeout has expired, loop until less + // than a jiffie of the desired delay remains. + // +- current->state = TASK_INTERRUPTIBLE; ++ set_current_state(TASK_INTERRUPTIBLE); + do + { + schedule_timeout(jiffies); +diff -u -p -r NVIDIA-Linux-x86_64-390.144/kernel.orig/nvidia-drm/nvidia-drm-drv.c NVIDIA-Linux-x86_64-390.144/kernel/nvidia-drm/nvidia-drm-drv.c +--- NVIDIA-Linux-x86_64-390.144/kernel.orig/nvidia-drm/nvidia-drm-drv.c 2021-08-31 16:58:57.783629508 +0200 ++++ NVIDIA-Linux-x86_64-390.144/kernel/nvidia-drm/nvidia-drm-drv.c 2021-08-31 17:56:41.345633279 +0200 +@@ -811,7 +811,9 @@ static void nv_drm_register_drm_device(c + + dev->dev_private = nv_dev; + nv_dev->dev = dev; ++#if defined(NV_DRM_DEVICE_HAS_PDEV) + dev->pdev = pdev; ++#endif + + /* Register DRM device to DRM sub-system */ + +diff -u -p -r NVIDIA-Linux-x86_64-390.144/kernel.orig/nvidia-drm/nvidia-drm.Kbuild NVIDIA-Linux-x86_64-390.144/kernel/nvidia-drm/nvidia-drm.Kbuild +--- NVIDIA-Linux-x86_64-390.144/kernel.orig/nvidia-drm/nvidia-drm.Kbuild 2021-08-31 16:58:57.783629508 +0200 ++++ NVIDIA-Linux-x86_64-390.144/kernel/nvidia-drm/nvidia-drm.Kbuild 2021-08-31 17:53:18.265539346 +0200 +@@ -102,3 +102,4 @@ NV_CONFTEST_TYPE_COMPILE_TESTS += drm_dr + NV_CONFTEST_TYPE_COMPILE_TESTS += drm_crtc_atomic_check_has_atomic_state_arg + NV_CONFTEST_TYPE_COMPILE_TESTS += drm_gem_object_vmap_has_map_arg + NV_CONFTEST_TYPE_COMPILE_TESTS += drm_plane_atomic_check_has_atomic_state_arg ++NV_CONFTEST_TYPE_COMPILE_TESTS += drm_device_has_pdev diff --git a/sys-kernel/nvidia-drivers-legacy-dkms/nvidia-drivers-legacy-dkms-390.144.ebuild b/sys-kernel/nvidia-drivers-legacy-dkms/nvidia-drivers-legacy-dkms-390.144-r1.ebuild index e95877a1..c56e28a6 100644 --- a/sys-kernel/nvidia-drivers-legacy-dkms/nvidia-drivers-legacy-dkms-390.144.ebuild +++ b/sys-kernel/nvidia-drivers-legacy-dkms/nvidia-drivers-legacy-dkms-390.144-r1.ebuild @@ -24,6 +24,7 @@ RDEPEND="${DEPEND} PATCHES=( "${FILESDIR}"/dkms.patch + "${FILESDIR}"/kernel-5.14.patch ) S="${WORKDIR}/${AMD64_NV_PACKAGE}" diff --git a/x11-drivers/nvidia-drivers-legacy/files/kernel-5.14.patch b/x11-drivers/nvidia-drivers-legacy/files/kernel-5.14.patch new file mode 100644 index 00000000..a4242ec7 --- /dev/null +++ b/x11-drivers/nvidia-drivers-legacy/files/kernel-5.14.patch @@ -0,0 +1,82 @@ +Taken from https://build.opensuse.org/package/view_file/X11:Drivers:Video/nvidia-gfxG04/kernel-5.14.patch?rev=233 +Credit to Stefan Dirsch <sndirsch@suse.com> + +diff -u -p -r NVIDIA-Linux-x86_64-390.144/kernel.orig/conftest.sh NVIDIA-Linux-x86_64-390.144/kernel/conftest.sh +--- NVIDIA-Linux-x86_64-390.144/kernel.orig/conftest.sh 2021-08-31 16:58:57.799629833 +0200 ++++ NVIDIA-Linux-x86_64-390.144/kernel/conftest.sh 2021-08-31 18:00:09.257825534 +0200 +@@ -4493,6 +4493,30 @@ compile_test() { + fi + ;; + ++ drm_device_has_pdev) ++ # ++ # Determine if the 'drm_device' structure has a 'pdev' field. ++ # ++ # Removed by commit b347e04452ff ("drm: Remove pdev field from ++ # struct drm_device") in v5.14-rc1. ++ # ++ CODE=" ++ #if defined(NV_DRM_DRMP_H_PRESENT) ++ #include <drm/drmP.h> ++ #endif ++ ++ #if defined(NV_DRM_DRM_DEVICE_H_PRESENT) ++ #include <drm/drm_device.h> ++ #endif ++ ++ int conftest_drm_device_has_pdev(void) { ++ return offsetof(struct drm_device, pdev); ++ }" ++ ++ compile_check_conftest "$CODE" "NV_DRM_DEVICE_HAS_PDEV" "" "types" ++ ;; ++ ++ + esac + } + +diff -u -p -r NVIDIA-Linux-x86_64-390.144/kernel.orig/nvidia/nvlink_linux.c NVIDIA-Linux-x86_64-390.144/kernel/nvidia/nvlink_linux.c +--- NVIDIA-Linux-x86_64-390.144/kernel.orig/nvidia/nvlink_linux.c 2021-08-31 16:58:57.787629590 +0200 ++++ NVIDIA-Linux-x86_64-390.144/kernel/nvidia/nvlink_linux.c 2021-08-31 17:51:49.207744327 +0200 +@@ -597,7 +597,7 @@ void NVLINK_API_CALL nvlink_sleep(unsign + // the requested timeout has expired, loop until less + // than a jiffie of the desired delay remains. + // +- current->state = TASK_INTERRUPTIBLE; ++ set_current_state(TASK_INTERRUPTIBLE); + do + { + schedule_timeout(jiffies); +diff -u -p -r NVIDIA-Linux-x86_64-390.144/kernel.orig/nvidia/os-interface.c NVIDIA-Linux-x86_64-390.144/kernel/nvidia/os-interface.c +--- NVIDIA-Linux-x86_64-390.144/kernel.orig/nvidia/os-interface.c 2021-08-31 16:58:57.787629590 +0200 ++++ NVIDIA-Linux-x86_64-390.144/kernel/nvidia/os-interface.c 2021-08-31 17:51:58.043922420 +0200 +@@ -580,7 +580,7 @@ NV_STATUS NV_API_CALL os_delay(NvU32 Mil + // the requested timeout has expired, loop until less + // than a jiffie of the desired delay remains. + // +- current->state = TASK_INTERRUPTIBLE; ++ set_current_state(TASK_INTERRUPTIBLE); + do + { + schedule_timeout(jiffies); +diff -u -p -r NVIDIA-Linux-x86_64-390.144/kernel.orig/nvidia-drm/nvidia-drm-drv.c NVIDIA-Linux-x86_64-390.144/kernel/nvidia-drm/nvidia-drm-drv.c +--- NVIDIA-Linux-x86_64-390.144/kernel.orig/nvidia-drm/nvidia-drm-drv.c 2021-08-31 16:58:57.783629508 +0200 ++++ NVIDIA-Linux-x86_64-390.144/kernel/nvidia-drm/nvidia-drm-drv.c 2021-08-31 17:56:41.345633279 +0200 +@@ -811,7 +811,9 @@ static void nv_drm_register_drm_device(c + + dev->dev_private = nv_dev; + nv_dev->dev = dev; ++#if defined(NV_DRM_DEVICE_HAS_PDEV) + dev->pdev = pdev; ++#endif + + /* Register DRM device to DRM sub-system */ + +diff -u -p -r NVIDIA-Linux-x86_64-390.144/kernel.orig/nvidia-drm/nvidia-drm.Kbuild NVIDIA-Linux-x86_64-390.144/kernel/nvidia-drm/nvidia-drm.Kbuild +--- NVIDIA-Linux-x86_64-390.144/kernel.orig/nvidia-drm/nvidia-drm.Kbuild 2021-08-31 16:58:57.783629508 +0200 ++++ NVIDIA-Linux-x86_64-390.144/kernel/nvidia-drm/nvidia-drm.Kbuild 2021-08-31 17:53:18.265539346 +0200 +@@ -102,3 +102,4 @@ NV_CONFTEST_TYPE_COMPILE_TESTS += drm_dr + NV_CONFTEST_TYPE_COMPILE_TESTS += drm_crtc_atomic_check_has_atomic_state_arg + NV_CONFTEST_TYPE_COMPILE_TESTS += drm_gem_object_vmap_has_map_arg + NV_CONFTEST_TYPE_COMPILE_TESTS += drm_plane_atomic_check_has_atomic_state_arg ++NV_CONFTEST_TYPE_COMPILE_TESTS += drm_device_has_pdev diff --git a/x11-drivers/nvidia-drivers-legacy/nvidia-drivers-legacy-390.144-r2.ebuild b/x11-drivers/nvidia-drivers-legacy/nvidia-drivers-legacy-390.144-r3.ebuild index e2094b5d..d1f2fd66 100644 --- a/x11-drivers/nvidia-drivers-legacy/nvidia-drivers-legacy-390.144-r2.ebuild +++ b/x11-drivers/nvidia-drivers-legacy/nvidia-drivers-legacy-390.144-r3.ebuild @@ -49,6 +49,7 @@ QA_PREBUILT="opt/* usr/lib*" PATCHES=( "${FILESDIR}"/dkms.patch + "${FILESDIR}"/kernel-5.14.patch ) S=${WORKDIR}/ |