[packages/xorg-driver-video-nvidia-legacy-390xx] - fix building with kernel 5.13

baggins baggins at pld-linux.org
Fri Jul 2 20:34:23 CEST 2021


commit b9b3ea8b19c1011b342dd49b478a2843b69359d3
Author: Jan Rękorajski <baggins at pld-linux.org>
Date:   Fri Jul 2 20:34:06 2021 +0200

    - fix building with kernel 5.13

 kernel-5.13.patch                          | 52 ++++++++++++++++++++++++++++++
 xorg-driver-video-nvidia-legacy-390xx.spec |  4 ++-
 2 files changed, 55 insertions(+), 1 deletion(-)
---
diff --git a/xorg-driver-video-nvidia-legacy-390xx.spec b/xorg-driver-video-nvidia-legacy-390xx.spec
index e00ed61..435eb96 100644
--- a/xorg-driver-video-nvidia-legacy-390xx.spec
+++ b/xorg-driver-video-nvidia-legacy-390xx.spec
@@ -29,7 +29,7 @@ exit 1
 
 %define		no_install_post_check_so 1
 
-%define		rel	3
+%define		rel	4
 %define		pname	xorg-driver-video-nvidia-legacy-390xx
 Summary:	Linux Drivers for nVidia GeForce/Quadro Chips
 Summary(hu.UTF-8):	Linux meghajtók nVidia GeForce/Quadro chipekhez
@@ -51,6 +51,7 @@ Source4:	10-nvidia.conf
 Source5:	10-nvidia-modules.conf
 Patch0:		X11-driver-nvidia-GL.patch
 Patch1:		X11-driver-nvidia-desktop.patch
+Patch2:		kernel-5.13.patch
 URL:		https://www.nvidia.com/en-us/drivers/unix/
 BuildRequires:	rpm-build >= 4.6
 BuildRequires:	rpmbuild(macros) >= 1.752
@@ -311,6 +312,7 @@ rm -rf NVIDIA-Linux-x86*-%{version}*
 %endif
 %patch0 -p1
 %patch1 -p1
+%patch2 -p1
 echo 'EXTRA_CFLAGS += -Wno-pointer-arith -Wno-sign-compare -Wno-unused' >> kernel/Makefile.kbuild
 
 %build
diff --git a/kernel-5.13.patch b/kernel-5.13.patch
new file mode 100644
index 0000000..c18e5f0
--- /dev/null
+++ b/kernel-5.13.patch
@@ -0,0 +1,52 @@
+--- NVIDIA-Linux-x86_64-390.143-no-compat32/kernel/nvidia-drm/nvidia-drm-crtc.c~	2021-03-12 08:31:39.000000000 +0100
++++ NVIDIA-Linux-x86_64-390.143-no-compat32/kernel/nvidia-drm/nvidia-drm-crtc.c	2021-07-02 20:27:35.094061481 +0200
+@@ -39,6 +39,8 @@
+ #include <drm/drm_atomic.h>
+ #include <drm/drm_atomic_helper.h>
+ 
++#include <linux/version.h>
++
+ static const u32 nv_default_supported_plane_drm_formats[] = {
+     DRM_FORMAT_ARGB1555,
+     DRM_FORMAT_XRGB1555,
+@@ -131,12 +133,19 @@
+ }
+ 
+ static int nv_drm_plane_atomic_check(struct drm_plane *plane,
++#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 13, 0)
+                                      struct drm_plane_state *plane_state)
++#else
++                                     struct drm_atomic_state *state)
++#endif
+ {
+     int i;
+     struct drm_crtc *crtc;
+     struct drm_crtc_state *crtc_state;
+     NvKmsKapiPlaneType type;
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 13, 0)
++    struct drm_plane_state *plane_state = drm_atomic_get_new_plane_state(state, plane);
++#endif
+ 
+     if (NV_DRM_WARN(!drm_plane_type_to_nvkms_plane_type(plane->type, &type))) {
+         goto done;
+@@ -175,12 +175,20 @@
+ }
+ 
+ static void nv_drm_plane_atomic_update(struct drm_plane *plane,
++#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 13, 0)
+                                        struct drm_plane_state *old_state)
++#else
++                                       struct drm_atomic_state *state)
++#endif
+ {
+ }
+ 
+ static void nv_drm_plane_atomic_disable(struct drm_plane *plane,
++#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 13, 0)
+                                         struct drm_plane_state *old_state)
++#else
++                                        struct drm_atomic_state *state)
++#endif
+ {
+ }
+ 
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/xorg-driver-video-nvidia-legacy-390xx.git/commitdiff/b9b3ea8b19c1011b342dd49b478a2843b69359d3



More information about the pld-cvs-commit mailing list