Wrong vertical refresh with Nouveau

Forum rules
Before you post read how to get help. Topics in this forum are automatically closed 6 months after creation.
Locked
josealb77

Wrong vertical refresh with Nouveau

Post by josealb77 »

Hello,
I'm using Linux Mint 14 MATE, 3.5.0-23 x64 with a NVIDIA GeForce GTX 460 video card and a ViewSonic VG1921wm monitor.
Using the NVIDIA privative driver I set the monitor resolution to 1440x900 @ 75Hz in Menu > Preferences > Monitors. Then with the monitor buttons I look in Information and it says that vertical frecuency is 74.8Hz, and when I set it to 1440x900 @ 60Hz, the monitor says that vertical frecuency is 59.9Hz, namely: all works well.

But when I'm using Nouveau it has no effect, wathever I set in Menu > Preferences > Monitors (as user or as root, is the same) the information of my monitor always shows a vertical frecuency of 59.9Hz.

My graphical system is crashing with some applications at fullscreen using Nouveau finally showing a "your x-system is bad configured" (or something like that) message.

What can I do in order to get the real 1440x900@75Hz resolution with Nouveau?
Last edited by LockBot on Wed Dec 28, 2022 7:16 am, edited 1 time in total.
Reason: Topic automatically closed 6 months after creation. New replies are no longer allowed.
cwsnyder

Re: Wrong vertical refresh with Nouveau

Post by cwsnyder »

Have you used xrandr to see what your driver thinks is the available resolutions and frequencies with your monitor? Just type xrandr on a line by itself in a terminal window to get the output.

You can also use cvt and xrandr to set your actual video mode to 1440x900@75Hz by the following:

Code: Select all

xrandr --newmode "1440x900_75.00"  136.75  1440 1536 1688 1936  900 903 909 942 -hsync +vsync
xrandr --addmode default "1440x900_75.00"
xrandr --output default --mode "1440x900_75.00"
You will need to replace default with whatever the output of xrandr said was the connected display name from the previous xrandr on a line by itself in a terminal.
josealb77

Re: Wrong vertical refresh with Nouveau

Post by josealb77 »

This is my xrandr output:

Code: Select all

~ $ xrandr
Screen 0: minimum 320 x 200, current 1440 x 900, maximum 8192 x 8192
DVI-I-1 connected 1440x900+0+0 (normal left inverted right x axis y axis) 410mm x 256mm
   1440x900       59.9 +   75.0* 
   1280x1024      75.0     60.0  
   1280x960       60.0  
   1366x768       60.0  
   1360x768       60.0  
   1280x800       74.9     59.8  
   1152x864       75.0  
   1280x768       74.9     59.9  
   1024x768       75.1     70.1     60.0  
   1024x576       60.0  
   832x624        74.6  
   800x600        72.2     75.0     60.3     56.2  
   848x480        60.0  
   640x480        72.8     75.0     66.7     60.0  
   720x400        70.1  
DVI-I-2 disconnected (normal left inverted right x axis y axis)
HDMI-1 disconnected (normal left inverted right x axis y axis)
And these are the commands I typed:

Code: Select all

~ $ xrandr --newmode "1440x900_75.00"  136.75  1440 1536 1688 1936  900 903 909 942 -hsync +vsync
~ $ xrandr --addmode DVI-I-1 "1440x900_75.00"
~ $ xrandr --output DVI-I-1 --mode "1440x900_75.00"
But nothing changed. I've even tried to reboot but it's all the same. Tried to change betwen 60 and 75 Hz in preferences > monitors but my monitor information show the frec. fixed to 59.9Hz.

This is my sudo get-edid|parse-edid output (as I've read in https://wiki.ubuntu.com/X/Troubleshooti ... itor_specs) that could be useful):

Code: Select all

~ $ sudo get-edid|parse-edid
parse-edid: parse-edid version 2.0.0 
get-edid: get-edid version 2.0.0

	Performing real mode VBE call
	Interrupt 0x10 ax=0x4f00 bx=0x0 cx=0x0
	Function supported
	Call successful

	VBE version 300
	VBE string at 0x11100 "NVIDIA"

VBE/DDC service about to be called
	Report DDC capabilities

	Performing real mode VBE call
	Interrupt 0x10 ax=0x4f15 bx=0x0 cx=0x0
	Function supported
	Call successful

	Monitor and video card combination does not support DDC1 transfers
	Monitor and video card combination supports DDC2 transfers
	0 seconds per 128 byte EDID block transfer
	Screen is not blanked during DDC transfer

Reading next EDID block

VBE/DDC service about to be called
	Read EDID

	Performing real mode VBE call
	Interrupt 0x10 ax=0x4f15 bx=0x1 cx=0x0
	Function supported
	Call failed

The EDID data should not be trusted as the VBE call failed
EDID claims 255 more blocks left
EDID blocks left is wrong.
Your EDID is probably invalid.
parse-edid: EDID checksum failed - data is corrupt. Continuing anyway.
parse-edid: first bytes don't match EDID version 1 header
parse-edid: do not trust output (if any).

	# EDID version 255 revision 255
Section "Monitor"
	Identifier "___:ffff"
	VendorName "___"
	ModelName "___:ffff"
	# DPMS capabilities: Active off:yes  Suspend:yes  Standby:yes

	Mode 	"4095x4095"	# vfreq 9.770Hz, hfreq 80.018kHz
		DotClock	655.350000
		HTimings	4095 4350 4605 8190
		VTimings	4095 4158 4221 8190
		Flags	"Interlace" "+HSync" "+VSync"
	EndMode
	Mode 	"4095x4095"	# vfreq 9.770Hz, hfreq 80.018kHz
		DotClock	655.350000
		HTimings	4095 4350 4605 8190
		VTimings	4095 4158 4221 8190
		Flags	"Interlace" "+HSync" "+VSync"
	EndMode
	Mode 	"4095x4095"	# vfreq 9.770Hz, hfreq 80.018kHz
		DotClock	655.350000
		HTimings	4095 4350 4605 8190
		VTimings	4095 4158 4221 8190
		Flags	"Interlace" "+HSync" "+VSync"
	EndMode
	Mode 	"4095x4095"	# vfreq 9.770Hz, hfreq 80.018kHz
		DotClock	655.350000
		HTimings	4095 4350 4605 8190
		VTimings	4095 4158 4221 8190
		Flags	"Interlace" "+HSync" "+VSync"
	EndMode
EndSection
josealb77@PCLinuxMint14 ~ $ 
And I attach the file /var/log/Xorg.0.log
cwsnyder

Re: Wrong vertical refresh with Nouveau

Post by cwsnyder »

First, any changes made with xrandr will not survive X being shutdown, let alone a system restart. It only affects your immediate session and will have to be done each time you log out and log back in. Second, according to your log file, you did succeed as far as the x-server can determine.
josealb77

Re: Wrong vertical refresh with Nouveau

Post by josealb77 »

First, any changes made with xrandr will not survive X being shutdown, let alone a system restart. It only affects your immediate session and will have to be done each time you log out and log back in.
I tried both, first without reboot but as it didn't work I tried rebooting, but there were no changes.
Second, according to your log file, you did succeed as far as the x-server can determine.
I'm sorry but I don't understand what you mean very well, do you mean that you've seen something in the log file or that the x-server determine an overriding option?

I don't know if I'm messing up the thread but I attach an Xorg log with the error that breaks my x-system when using wine 1.5.23 through playonlinux in Warcraft III I try to see the first film in the first campaign. Launching the same but with the NVIDIA drivers I can't see the film, but my x-system doesn't break, you click the film in order it to begin, screen turns black and then it comes back to the game, nevertheless with nouveau it begins to appear these messages in console and terminate with the error in the log file: (it's like nouveau try some configurations in order to find the correct one, but terminate with error) (I've replaced the first numbers with Xs as I think they are related to time and are not useful enough):

Code: Select all

[148.681958] [drm] nouveau 0000:01:00.0: PFIFO - playlist update failed
[149.XXXXXX] [drm] nouveau 0000:01:00.0: failed to idle channel 2.
[xxx.xxxxxx] [drm] nouveau 0000:01:00.0: PFIFO - playlist update failed
[xxx.xxxxxx] [drm] nouveau 0000:01:00.0: failed to idle channel 1.
[xxx.xxxxxx] [drm] nouveau 0000:01:00.0: PFIFO - playlist update failed
[xxx.xxxxxx] [drm] nouveau 0000:01:00.0: failed to idle channel 2.
[xxx.xxxxxx] [drm] nouveau 0000:01:00.0: PFIFO - playlist update failed
[xxx.xxxxxx] [drm] nouveau 0000:01:00.0: failed to idle channel 3.
[xxx.xxxxxx] [drm] nouveau 0000:01:00.0: PFIFO - playlist update failed
[xxx.xxxxxx] [drm] nouveau 0000:01:00.0: failed to idle channel 1.
[xxx.xxxxxx] [drm] nouveau 0000:01:00.0: PFIFO - playlist update failed
[xxx.xxxxxx] [drm] nouveau 0000:01:00.0: failed to idle channel 2.
[xxx.xxxxxx] [drm] nouveau 0000:01:00.0: PFIFO - playlist update failed
[xxx.xxxxxx] [drm] nouveau 0000:01:00.0: failed to idle channel 1.
[xxx.xxxxxx] [drm] nouveau 0000:01:00.0: PFIFO - playlist update failed
[xxx.xxxxxx] [drm] nouveau 0000:01:00.0: failed to idle channel 2.
[xxx.xxxxxx] [drm] nouveau 0000:01:00.0: PFIFO - playlist update failed
I'm not posting this in order to fix anything with playonlinux, wine or warcraft, I'm just posting this in order to gather the most information possible to solve the Vertical Frec problem, but I think it could be related and that fixing the Vertical Frec may fix this another problem.
cwsnyder

Re: Wrong vertical refresh with Nouveau

Post by cwsnyder »

josealb77 wrote:
I'm sorry but I don't understand what you mean very well, do you mean that you've seen something in the log file or that the x-server determine an overriding option?
I'm not posting this in order to fix anything with playonlinux, wine or warcraft, I'm just posting this in order to gather the most information possible to solve the Vertical Frec problem, but I think it could be related and that fixing the Vertical Frec may fix this another problem.
In your Log file, it indicates that the 1440x900 resolution with 75 Hz refresh setting is active with no errors on your DVI-I-1 connected display, it is just not the selected mode.

You should be able to use the 1152x864@75Hz setting to get 75Hz vertical refresh with no fall back vertical refresh frequency which is different.

I'm sorry, but I don't trust GUI settings for getting the proper setting for any display.

If you paste these 4 lines in the terminal, does the output of the final line indicate that the selected refresh rate is 75Hz or 60Hz? Also is there any indication of an ability to change the refresh rates at all in Menu >> Preferences >> Monitors?

Code: Select all

xrandr --newmode "1440x900_75.00"  136.75  1440 1536 1688 1936  900 903 909 942 -hsync +vsync
xrandr --addmode "DVI-I-1" "1440x900_75.00"
xrandr --output "DVI-I-1" --mode "1440x900_75.00"
xrandr
josealb77

Re: Wrong vertical refresh with Nouveau

Post by josealb77 »

Pasting these 4 lines in the terminal the output of the final line is:

Code: Select all

~ $ xrandr
Screen 0: minimum 320 x 200, current 1440 x 900, maximum 8192 x 8192
DVI-I-1 connected 1440x900+0+0 (normal left inverted right x axis y axis) 410mm x 256mm
   1440x900       59.9 +   75.0* 
   1280x1024      75.0     60.0  
   1280x960       60.0  
   1366x768       60.0  
   1360x768       60.0  
   1280x800       74.9     59.8  
   1152x864       75.0  
   1280x768       74.9     59.9  
   1024x768       75.1     70.1     60.0  
   1024x576       60.0  
   832x624        74.6  
   800x600        72.2     75.0     60.3     56.2  
   848x480        60.0  
   640x480        72.8     75.0     66.7     60.0  
   720x400        70.1  
   1440x900_75.00   75.0  
DVI-I-2 disconnected (normal left inverted right x axis y axis)
HDMI-1 disconnected (normal left inverted right x axis y axis)
And in Preferences > Monitors for the 1440x900 resolution I can choose 75 or 60 Hz fresh rate, but whichever I choose my monitor information says that the screen it's being displayed with Horizontal Frec: 55.9 KHz and Vertical Frec: 59.9 Hz.
It's like linux mint thinks it's displaying at 75 Hz but to the monitor just arrives 60 Hz (with NVIDIA drivers when I configure preferences > monitors 60 Hz the monitor information says 59.9 Hz and when I configure preferences > monitors to 75 Hz the monitor configuration says 74.9 Hz).

EDIT: With 1152x864@75Hz it's the same, it's like nouveau (or xorg, or whoever) is not able to set any other fresh rate than 60 Hz, although he thinks he is doing so.
cwsnyder

Re: Wrong vertical refresh with Nouveau

Post by cwsnyder »

I will have to take your experimental results as given.

The only thing I can say is that there is possibly a bug in the nouveau driver.
josealb77

Re: Wrong vertical refresh with Nouveau

Post by josealb77 »

Ok, thank you for your time and your help.
The first thing is said in http://nouveau.freedesktop.org/wiki/Bugs is "If you are using packages from your distribution, send the bug reports to your distribution and not directly to us." I suppose that posting in this forum as I have done it's considered as having contacted with Linux Mint, isn't it? If this forum is not cosidered as the Linux Mint's official technical support, where should I report this bug? Do I report it directly to the nouveau team or is it somewhere to report before? Sorry for my ignorance.
cwsnyder

Re: Wrong vertical refresh with Nouveau

Post by cwsnyder »

Since Mint 14 is derived from Ubuntu, the proper place to log the bug would probably be on http://bugs.launchpad.net
Locked

Return to “Graphics Cards & Monitors”