summaryrefslogtreecommitdiffstats
path: root/abs/core/nvidia-304xx/drm-driver-legacy.patch
diff options
context:
space:
mode:
Diffstat (limited to 'abs/core/nvidia-304xx/drm-driver-legacy.patch')
-rw-r--r--abs/core/nvidia-304xx/drm-driver-legacy.patch20
1 files changed, 20 insertions, 0 deletions
diff --git a/abs/core/nvidia-304xx/drm-driver-legacy.patch b/abs/core/nvidia-304xx/drm-driver-legacy.patch
new file mode 100644
index 0000000..32ac75c
--- /dev/null
+++ b/abs/core/nvidia-304xx/drm-driver-legacy.patch
@@ -0,0 +1,20 @@
+Author: Luca Boccassi <luca.boccassi@gmail.com>
+Description: Fix kernel module load on 4.9 and greater
+ From kernel 4.9 and newer (commit fa5386459f06) non-modesetting drivers have
+ to use the DRM flag DRIVER_LEGACY. Without this flag the kernel module does
+ not load correctly.
+
+--- a/nv-drm.c
++++ b/nv-drm.c
+@@ -71,7 +71,11 @@
+ };
+
+ static struct drm_driver nv_drm_driver = {
++#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 9, 0)
+ .driver_features = 0,
++#else
++ .driver_features = DRIVER_LEGACY,
++#endif
+ .load = nv_drm_load,
+ .unload = nv_drm_unload,
+ .fops = &nv_drm_fops,