summaryrefslogtreecommitdiffstats
path: root/source/x/x11/patch/xorg-server/0001-xfree86-use-modesetting-driver-by-default-on-GeForce.patch
diff options
context:
space:
mode:
author Patrick J Volkerding <volkerdi@slackware.com>2018-07-25 03:50:17 +0000
committer Eric Hameleers <alien@slackware.com>2018-07-25 13:47:10 +0200
commit7dba81f6b7375d01bcdd27fe402481ef14630001 (patch)
treecac4f32ff2b8ca640527a76405885b00c56d5a3d /source/x/x11/patch/xorg-server/0001-xfree86-use-modesetting-driver-by-default-on-GeForce.patch
parent00d6960a08e6f93912de4288aad90310fbf390ee (diff)
downloadcurrent-7dba81f6b7375d01bcdd27fe402481ef14630001.tar.gz
current-7dba81f6b7375d01bcdd27fe402481ef14630001.tar.xz
Wed Jul 25 03:50:17 UTC 201820180725035017
a/kernel-generic-4.14.57-x86_64-1.txz: Upgraded. a/kernel-huge-4.14.57-x86_64-1.txz: Upgraded. a/kernel-modules-4.14.57-x86_64-1.txz: Upgraded. a/shadow-4.2.1-x86_64-5.txz: Rebuilt. adduser: added "input" to additional user groups. Thanks to stormtracknole. a/sysvinit-scripts-2.1-noarch-14.txz: Rebuilt. Handle remote (NFS, etc.) mounts with spaces in the name. Thanks to upnort. d/kernel-headers-4.14.57-x86-1.txz: Upgraded. d/parallel-20180722-noarch-1.txz: Upgraded. d/rust-1.27.2-x86_64-1.txz: Upgraded. d/subversion-1.10.2-x86_64-1.txz: Upgraded. k/kernel-source-4.14.57-noarch-1.txz: Upgraded. l/libgphoto2-2.5.19-x86_64-1.txz: Upgraded. l/libzip-1.5.1-x86_64-4.txz: Rebuilt. Make sure that the API-CHANGES file is included in the package documentation. x/xf86-video-r128-6.11.0-x86_64-1.txz: Upgraded. x/xorg-server-1.20.0-x86_64-3.txz: Rebuilt. Applied some patches that other distributions have been using for a while: Fix glamor so that the return value from glamor_fds_from_pixmap matches what's expected (thanks to Darth Vader for pointing out these patches). Autobind secondary GPUs to the master as output sink / offload source. This seems like a beneficial patch until/unless DEs start to handle this. For nvidia cards, if they are GeForce 8 or newer use the modesetting driver by default. Seems to be recommmended by upstream where they indicate that fixes going into nouveau are primarily to target older cards for legacy support and that the modesetting ddx is preferable for newer ones: https://bugs.freedesktop.org/show_bug.cgi?id=94844 x/xorg-server-xephyr-1.20.0-x86_64-3.txz: Rebuilt. x/xorg-server-xnest-1.20.0-x86_64-3.txz: Rebuilt. x/xorg-server-xvfb-1.20.0-x86_64-3.txz: Rebuilt. isolinux/initrd.img: Rebuilt. Use ter-v14v.psf.gz as the consolefont. It supports more character sets, and the larger font was causing wraparound on UEFI (at least on bare metal here). kernels/*: Upgraded. usb-and-pxe-installers/usbboot.img: Rebuilt.
Diffstat (limited to 'source/x/x11/patch/xorg-server/0001-xfree86-use-modesetting-driver-by-default-on-GeForce.patch')
-rw-r--r--source/x/x11/patch/xorg-server/0001-xfree86-use-modesetting-driver-by-default-on-GeForce.patch52
1 files changed, 52 insertions, 0 deletions
diff --git a/source/x/x11/patch/xorg-server/0001-xfree86-use-modesetting-driver-by-default-on-GeForce.patch b/source/x/x11/patch/xorg-server/0001-xfree86-use-modesetting-driver-by-default-on-GeForce.patch
new file mode 100644
index 000000000..1b1306e28
--- /dev/null
+++ b/source/x/x11/patch/xorg-server/0001-xfree86-use-modesetting-driver-by-default-on-GeForce.patch
@@ -0,0 +1,52 @@
+From aa2f34d80ef3118eae0cce73b610c36cdcb978fe Mon Sep 17 00:00:00 2001
+From: Ben Skeggs <bskeggs@redhat.com>
+Date: Sat, 22 Apr 2017 02:26:28 +1000
+Subject: [PATCH xserver] xfree86: use modesetting driver by default on GeForce
+ 8 and newer
+
+Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
+---
+ hw/xfree86/common/xf86pciBus.c | 20 ++++++++++++++++++++
+ 1 file changed, 20 insertions(+)
+
+diff --git a/hw/xfree86/common/xf86pciBus.c b/hw/xfree86/common/xf86pciBus.c
+index 8158c2b62..78d1c947d 100644
+--- a/hw/xfree86/common/xf86pciBus.c
++++ b/hw/xfree86/common/xf86pciBus.c
+@@ -37,6 +37,7 @@
+ #include <unistd.h>
+ #include <X11/X.h>
+ #include <pciaccess.h>
++#include <xf86drm.h>
+ #include "os.h"
+ #include "Pci.h"
+ #include "xf86.h"
+@@ -1190,6 +1191,25 @@ xf86VideoPtrToDriverList(struct pci_device *dev,
+ int idx = 0;
+
+ #ifdef __linux__
++ char busid[32];
++ int fd;
++
++ snprintf(busid, sizeof(busid), "pci:%04x:%02x:%02x.%d",
++ dev->domain, dev->bus, dev->dev, dev->func);
++
++ /* 'modesetting' is preferred for GeForce 8 and newer GPUs */
++ fd = drmOpenWithType("nouveau", busid, DRM_NODE_RENDER);
++ if (fd >= 0) {
++ uint64_t args[] = { 11 /* NOUVEAU_GETPARAM_CHIPSET_ID */, 0 };
++ int ret = drmCommandWriteRead(fd, 0 /* DRM_NOUVEAU_GETPARAM */,
++ &args, sizeof(args));
++ drmClose(fd);
++ if (ret == 0) {
++ if (args[1] == 0x050 || args[1] >= 0x80)
++ break;
++ }
++ }
++
+ driverList[idx++] = "nouveau";
+ #endif
+ driverList[idx++] = "nv";
+--
+2.12.2
+