Skip to content

Commit dc00fc3

Browse files
committed
nvidia: switch to open kernel modules
1 parent 00f2db4 commit dc00fc3

4 files changed

Lines changed: 49 additions & 5 deletions

File tree

srcpkgs/nvidia/files/dkms.conf

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,3 +17,5 @@ BUILT_MODULE_NAME[2]="nvidia-modeset"
1717
DEST_MODULE_LOCATION[2]="/kernel/drivers/video"
1818
BUILT_MODULE_NAME[3]="nvidia-drm"
1919
DEST_MODULE_LOCATION[3]="/kernel/drivers/video"
20+
BUILT_MODULE_NAME[4]="nvidia-peermem"
21+
DEST_MODULE_LOCATION[4]="/kernel/drivers/video"
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
From 69769b8ebaaeca84a5188330f80c460dcc0fa747 Mon Sep 17 00:00:00 2001
2+
From: Eric Naim <dnaim@cachyos.org>
3+
Date: Fri, 24 Jan 2025 19:34:24 +0700
4+
Subject: [PATCH] Enable atomic kernel modesetting by default
5+
6+
This is required for proper functionality under Wayland. fbdev has been default enabled since 570 so that
7+
hunk can be removed from this patch.
8+
9+
Signed-off-by: Eric Naim <dnaim@cachyos.org>
10+
---
11+
nvidia-drm/nvidia-drm-linux.c | 2 +-
12+
nvidia-drm/nvidia-drm-os-interface.c | 2 +-
13+
2 files changed, 2 insertions(+), 2 deletions(-)
14+
15+
diff --git a/nvidia-drm/nvidia-drm-linux.c b/nvidia-drm/nvidia-drm-linux.c
16+
index 0007cbf..bd0b9eb 100644
17+
--- a/kernel-open/nvidia-drm/nvidia-drm-linux.c
18+
+++ b/kernel-open/nvidia-drm/nvidia-drm-linux.c
19+
@@ -31,7 +31,7 @@
20+
21+
MODULE_PARM_DESC(
22+
modeset,
23+
- "Enable atomic kernel modesetting (1 = enable, 0 = disable (default))");
24+
+ "Enable atomic kernel modesetting (1 = enable (default), 0 = disable)");
25+
module_param_named(modeset, nv_drm_modeset_module_param, bool, 0400);
26+
27+
#if defined(NV_DRM_FBDEV_AVAILABLE)
28+
diff --git a/nvidia-drm/nvidia-drm-os-interface.c b/nvidia-drm/nvidia-drm-os-interface.c
29+
index 7617476..f22afd7 100644
30+
--- a/kernel-open/nvidia-drm/nvidia-drm-os-interface.c
31+
+++ b/kernel-open/nvidia-drm/nvidia-drm-os-interface.c
32+
@@ -41,7 +41,7 @@
33+
#include <drm/drmP.h>
34+
#endif
35+
36+
-bool nv_drm_modeset_module_param = false;
37+
+bool nv_drm_modeset_module_param = true;
38+
bool nv_drm_fbdev_module_param = true;
39+
40+
void *nv_drm_calloc(size_t nmemb, size_t size)
41+
--
42+
2.48.1

srcpkgs/nvidia/patches/nvidia-tegra-bpmp.patch

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
--- a/kernel/nvidia/nv-clk.c
2-
+++ b/kernel/nvidia/nv-clk.c
1+
--- a/kernel-open/nvidia/nv-clk.c
2+
+++ b/kernel-open/nvidia/nv-clk.c
33
@@ -27,8 +27,10 @@
44
#include "nv-linux.h"
55
#include "nv-platform.h"

srcpkgs/nvidia/template

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ pkgname=nvidia
66
version=580.82.09
77
revision=1
88
maintainer="Andrew Benson <abenson+void@gmail.com>"
9-
license="custom:NVIDIA Proprietary"
9+
license="custom:NVIDIA Proprietary, MIT, GPL-2.0-only"
1010
homepage="https://www.nvidia.com/en-us/drivers/unix/"
1111

1212
archs="x86_64"
@@ -254,7 +254,7 @@ do_install() {
254254

255255
# dkms pkg
256256
vmkdir usr/src/nvidia-${version}
257-
vcopy "kernel/*" usr/src/nvidia-${version}
257+
vcopy "kernel-open/*" usr/src/nvidia-${version}
258258
vcopy ${FILESDIR}/dkms.conf usr/src/nvidia-${version}
259259
sed -e "s/__PKGVER/${version}/g" \
260260
-e 's/__MAKEJOBS/-j$(nproc)/g' \
@@ -319,7 +319,7 @@ nvidia-libs_package() {
319319
}
320320

321321
nvidia-dkms_package() {
322-
short_desc="${_desc} - DKMS kernel module"
322+
short_desc="${_desc} - DKMS open kernel module"
323323
depends="dkms xbps-triggers>=0.121_1"
324324
dkms_modules="nvidia ${version}"
325325
# dkms must be before initramfs-regenerate to build modules before images

0 commit comments

Comments
 (0)