LinuxQuestions.org
Visit Jeremy's Blog.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 12-04-2023, 02:10 AM   #1
Desiderius
Member
 
Registered: Jun 2017
Location: France
Distribution: Slackware
Posts: 151

Rep: Reputation: Disabled
New mode XRANDR not good for KDE


Upgrading an old desktop computer with an old NVIDIA graphic card ( Geforce 6150 ), I had the disageable surprise
to discover that the nouveau driver which worked fined with Slack 14.2 and a 4.x kernel does not work with Slack 15 and a 5.x kernel !

I tried to compile proprietary NVIDIA drivers but all of these failed to compile ( the 304 version that fits with the card or the 536 new one)

So I had the only choice to have a VESA driver.

But when selecting VESA driver, I only obtain poor resolution : typically 1024 x 768 for a screen ( BENQ FP202W) thac can handle up to
1680 x 1050 at 60 Hz.

I decided to create a new resolution with these characterics

First, I created a new Modeline using cvt or gtf and put in xorg.conf

Then, I give this modeline to xrandr using

Code:
xrandr --newmode "1680x1050" 146.25 1680 1784 1960 2240 1050 1053 1059 1089 -hsync +vsync
Finally I add this new mode to the xrandr list :

Code:
xrandr --addmode default 1680x1050
Looking at the list of resolutions stored in xrandr, I see the 1680x1050 mode but displayed with the frequency ( 59.95 )
while the other resolutions are displayed with a 0.00 frequency.

Nevertheless, I open the Display Configuration Window in KDE and see all the resolutions displayed including the 1680x1050

But, when I select it, even if the display in the window is right , I get an error and the resolution is not selected !

I also tried to display it with xrandr by

Code:
xrandr --output default -- mode 1680x1050
but here I get a CVCT error

So what is wrong ? Is it the frequency 59.95 in xrandr which is not correct ?

Any idea will be welcomed
Attached Thumbnails
Click image for larger version

Name:	config.jpg
Views:	38
Size:	57.1 KB
ID:	42171   Click image for larger version

Name:	xorg.jpg
Views:	35
Size:	107.8 KB
ID:	42172   Click image for larger version

Name:	xrandr.jpg
Views:	32
Size:	42.1 KB
ID:	42173  
 
Old 12-04-2023, 07:42 AM   #2
allend
LQ 5k Club
 
Registered: Oct 2003
Location: Melbourne
Distribution: Slackware64-15.0
Posts: 6,383

Rep: Reputation: 2762Reputation: 2762Reputation: 2762Reputation: 2762Reputation: 2762Reputation: 2762Reputation: 2762Reputation: 2762Reputation: 2762Reputation: 2762Reputation: 2762
I can find these reports of modelines for the BENQ FP202W at 1680x1050
A
Code:
ModeLine "1680x1050" 119.000 1680 1728 1760 1840 1050 1053 1059 1080 +hsync -vsync
B - NB Same as A but does not specify +hsync -vsync
Code:
Modeline "1680x1050" 119.00 1680 1728 1760 1840 1050 1053 1059 1080
C - NB Numbers are slightly different but does specify +hsync -vsync
Code:
Modeline "custom" 122.00 1680 1712 1784 1864 1050 1052 1064 1082 +HSync -Vsync
If you still have your old install, you could look in /var/log/Xorg.0.log to see what was being used.
 
Old 12-04-2023, 09:12 AM   #3
JayByrd
Member
 
Registered: Aug 2021
Location: Seattle, WA
Distribution: Slackware
Posts: 302

Rep: Reputation: 310Reputation: 310Reputation: 310Reputation: 310
Some things to note:

Quote:
The Linux 304.* legacy driver series is the last to support the NV4x and G7x GPUs and motherboard chipsets based on them. Support for X.Org xserver version 1.19 was added to the 304.* legacy driver series with version 304.134, and support for Linux kernels up to Linux 4.13 was added with version 304.137. No further releases from the 304.* series are planned.
1. The latest versions do not support cards that old. So if you need to use the nVidia proprietary instead of nouveau, you will indeed have to use the old version 304.xx.

2. The legacy 304.xx version supports kernels only up to 4.13. In order to get the nVidia kernel module to compile for kernels 4.14+, the nVidia code needs lots of patching.

3. The legacy 304.xx version supports xorg-server only up to 1.19. Slackware 15.0 ships with xorg-server 1.20. (The 304.xx nVidia will not work with xorg-server 1.20 due to an ABI incompatibility.)

The good news is that it actually does work, believe it or not! I'm currently running a Slackware 15.0 box with a similarly old nVidia card, and it works like a charm. Of course, it did take a little work to address issues 2 & 3 above.

I've posted SlackBuild scripts (including necessary patches) here. The build script for the binary nvidia driver is in the first post of that thread. Post #8 has the build script for xorg-server 1.19.7 and post #9 has the build script for the nvidia kernel module (works up to kernel 6.3.)

I've since added patches to keep the kernel module compiling on kernels up to 6.7-rc and a couple more CVE fixes for the 1.19.7 version of xorg-server. I'll try to upload these latest updates soon.
 
5 members found this post helpful.
Old 12-05-2023, 03:30 AM   #4
Desiderius
Member
 
Registered: Jun 2017
Location: France
Distribution: Slackware
Posts: 151

Original Poster
Rep: Reputation: Disabled
Thanks a lot @JayByrd !

I have not seen your discussion on LQ before looking for a solution.

I agree with you that it is interesting to make these old cards work instead of buying new ones.

I have downloaded your three SLackbuilds on the previous discussion list but I have not seen the sources inside them.

You say in the other discussion that "they are in the same directory as the Slackbuild" but where is this directory ?
 
Old 12-05-2023, 03:46 AM   #5
Desiderius
Member
 
Registered: Jun 2017
Location: France
Distribution: Slackware
Posts: 151

Original Poster
Rep: Reputation: Disabled
Sorry I found the addresses in the .info files !

I test and let you know if it works
 
Old 12-05-2023, 05:11 AM   #6
Desiderius
Member
 
Registered: Jun 2017
Location: France
Distribution: Slackware
Posts: 151

Original Poster
Rep: Reputation: Disabled
No X window after installation

I have just installed the three Slackbuilds ( xorg, nvidia-kernel, nvidia-driver) using the default everywhere.

Everything compiles without any errors and is installed without any errors.

After rebooting, I see an error message at the end of the boot :

modprobe : FATAL : Module nvidia-drm not found in dir /lib/modules/5.15.19

I try to launch X window but it fails

and looking at the /var/log/Xorg.0.log, I see the same error

I have tried to remove and reinstall the nvidia-kernel module but without success.

Have I forgotten something ?

Last edited by Desiderius; 12-05-2023 at 09:40 AM.
 
Old 12-05-2023, 01:18 PM   #7
henca
Senior Member
 
Registered: Aug 2007
Location: Linköping, Sweden
Distribution: Slackware
Posts: 1,012

Rep: Reputation: 678Reputation: 678Reputation: 678Reputation: 678Reputation: 678Reputation: 678
Quote:
Originally Posted by Desiderius View Post
I have just installed the three Slackbuilds ( xorg, nvidia-kernel, nvidia-driver) using the default everywhere.

Everything compiles without any errors and is installed without any errors.

After rebooting, I see an error message at the end of the boot :

modprobe : FATAL : Module nvidia-drm not found in dir /lib/modules/5.15.19
Could it be that you have "installed" a kernel security upgrade and that your nvidia-kernel module was compiled and installed for that newer kernel?

Quote:
Originally Posted by Desiderius View Post
Have I forgotten something ?
Version 5.15.19 was the original kernel version shipped with Slackware 15.0. Since then it has been updated at some occasions. However, when installing a new kernel it is important to also reconfigure your boot loader of choice to point to the new kernel. If you are using a generic kernel with an initrd you also have some extra homework to do.

Another thing that you will need to do when installing the binary nvidia driver is to blacklist the nouveau module.

regards Henrik
 
Old 12-05-2023, 01:38 PM   #8
USUARIONUEVO
Senior Member
 
Registered: Apr 2015
Posts: 2,348

Rep: Reputation: 948Reputation: 948Reputation: 948Reputation: 948Reputation: 948Reputation: 948Reputation: 948Reputation: 948
Probably forgot install nouveau-blacklist
 
Old 12-06-2023, 02:40 PM   #9
JayByrd
Member
 
Registered: Aug 2021
Location: Seattle, WA
Distribution: Slackware
Posts: 302

Rep: Reputation: 310Reputation: 310Reputation: 310Reputation: 310
Quote:
Originally Posted by Desiderius View Post
After rebooting, I see an error message at the end of the boot :

modprobe : FATAL : Module nvidia-drm not found in dir /lib/modules/5.15.19

I try to launch X window but it fails

and looking at the /var/log/Xorg.0.log, I see the same error
This seems rather strange. The 304 nvidia kernel driver build produces a single kernel module: "nvidia.ko". Not "nvidia-drm". Could you please post the output of the following command:
Code:
lspci | grep VGA
Quote:
Originally Posted by Desiderius View Post
I have just installed the three Slackbuilds ( xorg, nvidia-kernel, nvidia-driver) using the default everywhere.

Everything compiles without any errors and is installed without any errors.

Have I forgotten something ?
That's possible. You say that you installed the three packages, but did you first remove any and all old previously installed versions?

Also, did you read the README files cafefully? For this to work, you'll need a custom-compiled kernel at run-time, as the stock Slackware kernels won't work. The nvidia-legacy304-kernel build script will do this for you if you ask it nicely. E.g.,
Code:
KERNEL=5.15.19 AUTO_KERN=huge ./nvidia-legacy304-kernel.SlackBuild
And, as henca said, you also need to blacklist the nouveau module, (so as to avoid conflicts.)

Last edited by JayByrd; 12-06-2023 at 03:21 PM. Reason: clarification.
 
Old 12-11-2023, 04:49 AM   #10
Desiderius
Member
 
Registered: Jun 2017
Location: France
Distribution: Slackware
Posts: 151

Original Poster
Rep: Reputation: Disabled
Thanks for your answer Jaybird

The kernel module nvidia.ko was well constructed . I have found that the reference for nvidia-drm came from a

Code:
modprobe nvidia-drm
that I had forgotten in /etc/rc.d/rc.local

I have hesitated to make :

Code:
KERNEL=5.15.19 AUTO_KERN=huge ./nvidia-legacy304-kernel.SlackBuild
but thought that the default configuration will take the right options

I will test it as soon as I have access to the computer normally next week

Thanks a lot for your help
 
Old 01-10-2024, 07:49 AM   #11
Desiderius
Member
 
Registered: Jun 2017
Location: France
Distribution: Slackware
Posts: 151

Original Poster
Rep: Reputation: Disabled
I have not yet tested since I was in vacation.

I plan to test it next week end. Of course, I will use :

Code:
KERNEL=5.15.19 AUTO_KERN=huge ./nvidia-legacy304-kernel.SlackBuild
for the kernel Slackbuild

Is there anything else to do with the other Slackbuild : for instance removepkg of xorg 1.20 to be sure to use the xorg1.19 of the Slackbuild ?


Quote:
Originally Posted by JayByrd View Post
This seems rather strange. The 304 nvidia kernel driver build produces a single kernel module: "nvidia.ko". Not "nvidia-drm". Could you please post the output of the following command:
Code:
lspci | grep VGA
That's possible. You say that you installed the three packages, but did you first remove any and all old previously installed versions?

Also, did you read the README files cafefully? For this to work, you'll need a custom-compiled kernel at run-time, as the stock Slackware kernels won't work. The nvidia-legacy304-kernel build script will do this for you if you ask it nicely. E.g.,
Code:
KERNEL=5.15.19 AUTO_KERN=huge ./nvidia-legacy304-kernel.SlackBuild
And, as henca said, you also need to blacklist the nouveau module, (so as to avoid conflicts.)
 
Old 01-14-2024, 11:09 AM   #12
Desiderius
Member
 
Registered: Jun 2017
Location: France
Distribution: Slackware
Posts: 151

Original Poster
Rep: Reputation: Disabled
Finally it works

Thanks a lot @Jaybird

After applying your command line, the Slackbuild has recompiled a new kernel that I have given to lilo.

With the two other Slackbuilds, the NVIDIA driver is well loaded and works like a charm giving me the best resolution available !

The only remaining problem is that SDDM does not display anything but I use XDM and everything works fine on my old computer
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
How to add new mode screen resolution in xrandr for two monitors Nooblan Linux - Newbie 1 09-02-2016 08:07 PM
How to add new mode screen resolution in xrandr for two monitors Nooblan Linux - General 1 09-02-2016 12:59 PM
How to add new mode screen resolution in xrandr for two monitors Nooblan Linux - General 1 09-02-2016 12:56 PM
radeon and dual head, to xrandr or not to xrandr, that's the question i92guboj Linux - Desktop 1 06-17-2009 05:48 AM
Add new mode to Xrandr conf! drakeman007 Linux - Newbie 5 03-07-2009 07:04 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 03:17 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration