nV News Forums

 
 

nV News Forums (http://www.nvnews.net/vbulletin/index.php)
-   NVIDIA Linux (http://www.nvnews.net/vbulletin/forumdisplay.php?f=14)
-   -   Modelines/Metamodes/Screen Resolutions trouble with NVIDIA drivers 302 and up (http://www.nvnews.net/vbulletin/showthread.php?t=187657)

Ixmucane3001 08-06-12 06:50 PM

Modelines/Metamodes/Screen Resolutions trouble with NVIDIA drivers 302 and up
 
Hello everyone. I appear to be a yet another user who can't configure his screen resolutions after the 302 version of the NVIDIA driver came out (using the 304.32 version ATM).

I've read the manuals, googled and searched through these forums, however the solutions posted here don't work for me (either that, or I'm doing something wrong - which is quite likely the case).


A little background first. I own a laptop whose native screen resolution is 1440x900. Up till version 295, I had to explicitly state some of my modelines in the monitor section of my xorg.conf, otherwise they wouldn't appear in either the xrandr list, or the nvidia-settings GUI (or anywhere else). More precisely, those were the widescreen resolutions lower than my native one (i.e. 1360x850, 1280x800, 960x600, and so on). Some of the 4:3 resolutions worked out-of-the-box (such as 1024x768), but in the end I ended up writing modelines for every resolution I needed in my xorg.conf, just to stay on the safe side.

Now that the 302 and 304 are out, none of these work anymore. I am aware that the configuration syntax was intentionally changed, I just can't seem to catch up with what I am supposed to do now.



Anyway. Up till now my Monitor section looked like this...
Code:

Section "Monitor"
        Identifier    "Monitor0"
        VendorName    "Unknown"
        ModelName      "Seiko/Epson"
        HorizSync      28.0 - 33.0
        VertRefresh    43.0 - 72.0
        HorizSync      30.0 - 75.0
        VertRefresh    60.0
        Option          "DPMS"
        ModeLine        "1440x900_60.00" 106.47 1440 1520 1672 1904 900 901 904 932 -hsync +vsync
        ModeLine        "1360x850_60.00" 94.62 1360 1432 1576 1792 850 851 854 880 -HSync +Vsync
        ModeLine        "1280x800_60.00" 83.460 1280 1344 1480 1680 800 801 804 828 -hsync +vsync
        ModeLine        "1152x864_60.00" 81.620 1152 1216 1336 1520 864 865 868 895 -hsync +vsync
        ModeLine        "1024x768_60.00" 64.110 1024 1080 1184 1344 768 769 772 795 -hsync +vsync
        ModeLine        "960x600_60.00" 45.980 960 1000 1096 1232 600 601 604 622 -hsync +vsync
        ModeLine        "960x540_60.00" 40.780 960 992 1088 1216 540 541 544 559 -hsync +vsync
        ModeLine        "840x525_60.00" 34.730 840 864 952 1064 525 526 529 544 -hsync +vsync
        ModeLine        "800x600_60.00" 38.220 800 832 912 1024 600 601 604 622 -hsync +vsync
        ModeLine        "640x480_60.00" 23.860 640 656 720 800 480 481 484 497 -hsync +vsync
EndSection

...and it all worked fine. All the modes entered above worked, and were seen by both XrandR and the nvidia-settings.

What I have now is 1440x900 only. Even the 4:3 resolutions (such as 1024x768), which worked without adding explicit modelines before, are not available anymore.

"xrandr -q --q1" shows this...
Code:

$ xrandr -q --q1
 SZ:    Pixels          Physical      Refresh
*0  1440 x 900    ( 373mm x 230mm )  *50  51  52  53 
 1  1280 x 720    ( 331mm x 184mm )  54 
 2  1024 x 768    ( 265mm x 197mm )  55 
 3    800 x 600    ( 207mm x 153mm )  56 
 4    640 x 480    ( 165mm x 123mm )  57 
 5  1440 x 810    ( 373mm x 207mm )  58 
Current rotation - normal
Current reflection - none
Rotations possible - normal left inverted right
Reflections possible - X Axis Y Axis

...but the modes here are not available in the nvidia-settings GUI, nor the KDE's display options (both of which, again, just show 1440x900). What is even stranger (to me, at least), are the modes number 1 and 5 - I never used those, and switching to them via xrandr looks pretty strange (black bars on top and bottom of my screen, making it look even "wider" than the 16:10 aspect).



So far, I've tried adding this to my Screen section:
Code:

        Option                "IncludeImplicitMetaModes" "True"
        Option                "IncludeImplicitMetaModes" "DisplayDevice = LVDS-0, Scaling=Aspect-Scaled, UseModePool = true"
        Option                "IncludeImplicitMetaModes" "ExtraResolutions = ( 1360x850, 1280x800, 1152x864, 1024x768, 960x600, 800x600, 640x480), DisplayDevice = LVDS-0"

...as well as this:
Code:

        SubSection        "Display"
            Depth        24
            Modes        "1440x900" "1360x850" "1280x800" "1152x864" "1024x768" "960x600" "800x600" "640x480"
        EndSubSection

...and just this:
Code:

        Option                "MetaModes" "1440x900_60; 1360x850_60; 1280x800_60; 1152x864_60; 1024x768_60"
but none to any avail.


The result in /var/log/Xorg.0.log I always get contains something like this:
Code:

[  8010.226] (--) NVIDIA(0): Valid display device(s) on GeForce 9600M GT at PCI:1:0:0
[  8010.226] (--) NVIDIA(0):    CRT-0
[  8010.226] (--) NVIDIA(0):    Seiko/Epson (DFP-0) (connected)
[  8010.226] (--) NVIDIA(0):    DFP-1
[  8010.226] (--) NVIDIA(0): CRT-0: 400.0 MHz maximum pixel clock
[  8010.226] (--) NVIDIA(0): Seiko/Epson (DFP-0): 330.0 MHz maximum pixel clock
[  8010.226] (--) NVIDIA(0): Seiko/Epson (DFP-0): Internal Dual Link LVDS
[  8010.226] (--) NVIDIA(0): DFP-1: 165.0 MHz maximum pixel clock
[  8010.226] (--) NVIDIA(0): DFP-1: Internal Single Link TMDS
[  8010.227] (**) NVIDIA(0): Using HorizSync/VertRefresh ranges from the EDID for display
[  8010.227] (**) NVIDIA(0):    device Seiko/Epson (DFP-0) (Using EDID frequencies has
[  8010.227] (**) NVIDIA(0):    been enabled on all display devices.)
[  8010.227] (WW) NVIDIA(0): No valid modes for "DFP-0:1360x850"; removing.
[  8010.227] (WW) NVIDIA(0): No valid modes for "DFP-0:1280x800"; removing.
[  8010.227] (WW) NVIDIA(0): No valid modes for "DFP-0:1152x864"; removing.
[  8010.227] (WW) NVIDIA(0): No valid modes for "DFP-0:1024x768"; removing.
[  8010.227] (WW) NVIDIA(0): No valid modes for "DFP-0:960x600"; removing.
[  8010.228] (WW) NVIDIA(0): No valid modes for "DFP-0:800x600"; removing.
[  8010.228] (WW) NVIDIA(0): No valid modes for "DFP-0:640x480"; removing.
[  8010.228] (II) NVIDIA(0): Validated MetaModes:
[  8010.228] (II) NVIDIA(0):    "DFP-0:1440x900"
[  8010.228] (II) NVIDIA(0): Virtual screen size determined to be 1440 x 900

[  8011.285] (--) NVIDIA(0): DPI set to (98, 99); computed from "UseEdidDpi" X config
[  8011.285] (--) NVIDIA(0):    option
[  8011.285] (--) Depth 24 pixmap format is 32 bpp

Any help regarding this would be much appreciated. I'm fairly sure I'm doing something wrong, but I don't really know what.


Thanks in advance!


EDIT: and yeah, sorry for the mess in this post. Now that I look at it, it seems I've had quite a bit of stuff confused. So just please ignore it :) the post under this one is addressing what I'm actually having trouble with ATM.

Ixmucane3001 08-12-12 07:14 PM

Re: Modelines/Metamodes/Screen Resolutions trouble with NVIDIA drivers 302 and up
 
Okay, a quick update. I've got most of the stuff working again. I've just configured a few of the most important screen resolutions, and I probably don't even need any other.

"xrandr -q" still shows my native resolution (1440x900) only, but if I understood it correctly, this behaviour is intended.

"xrandr -q --q1" now shows this...
Code:

$ xrandr -q --q1
 SZ:    Pixels          Physical      Refresh                                                                                                                 
*0  1440 x 900    ( 373mm x 230mm )  *50  58  59  60                                                                                                       
 1  1360 x 850    ( 352mm x 218mm )  51                                                                                                                       
 2  1280 x 800    ( 331mm x 205mm )  52                                                                                                                       
 3  1152 x 864    ( 298mm x 221mm )  53                                                                                                                       
 4  1024 x 768    ( 265mm x 197mm )  54 
 5    960 x 600    ( 248mm x 153mm )  55 
 6    800 x 600    ( 207mm x 153mm )  56 
 7    640 x 480    ( 165mm x 123mm )  57 
 8  1280 x 720    ( 331mm x 184mm )  61 
 9  1440 x 810    ( 373mm x 207mm )  62 
Current rotation - normal
Current reflection - none
Rotations possible - normal left inverted right
Reflections possible - X Axis Y Axis

...which is cool. Yay :)



My xorg.conf(.d) now has the relevant sections configured as follows:
Code:

Section "Device"
        Identifier      "Default nvidia Device"
        Driver          "nvidia"
        Option                "NoLogo" "True"
EndSection

Code:

Section "Monitor"
  Identifier        "Monitor0"
EndSection

Code:

Section "Screen"
  Identifier        "Screen0"
  Monitor        "Monitor0"
  Option        "CustomEDID" "/home/arch/edid.bin"
  DefaultDepth        24
  Option        "metamodes" "LVDS-0: nvidia-auto-select { ViewPortIn=1440x900 }; LVDS-0: nvidia-auto-select { ViewPortIn=1360x850 }; LVDS-0: nvidia-auto-select { ViewPortIn=1280x800 }; LVDS-0: nvidia-auto-select { ViewPortIn=1152x864 ViewPortOut=1200x900+120+0 }; LVDS-0: nvidia-auto-select { ViewPortIn=1024x768 ViewPortOut=1200x900+120+0 }; LVDS-0: nvidia-auto-select { ViewPortIn=960x600 ViewPortOut=1200x900+120+0 }; LVDS-0: nvidia-auto-select { ViewPortIn=800x600 ViewPortOut=1200x900+120+0 }; LVDS-0: nvidia-auto-select { ViewPortIn=640x480 ViewPortOut=1200x900+120+0 }"
  SubSection "Display"
    Depth        24
  EndSubSection
EndSection

I've bolded the line which (I think) contains the important part.

However, one thing still remains.
My 4:3 screen modes are not scaled with proper aspect ratio. The way I understood it, it has something to do with the ViewPortOut command, but I can't seem to figure out the proper syntax. Could someone please help me with this? TIA

EDIT: Nevermind, solved that one, too. The commas were missing from the "Option "metamodes"" line:
Code:

Option        "metamodes" "LVDS-0: nvidia-auto-select { ViewPortIn=1440x900 }; LVDS-0: nvidia-auto-select { ViewPortIn=1360x850 }; LVDS-0: nvidia-auto-select { ViewPortIn=1280x800 }; LVDS-0: nvidia-auto-select { ViewPortIn=1152x864, ViewPortOut=1200x900+120+0 }; LVDS-0: nvidia-auto-select { ViewPortIn=1024x768, ViewPortOut=1200x900+120+0 }; LVDS-0: nvidia-auto-select { ViewPortIn=960x600, ViewPortOut=1200x900+120+0 }; LVDS-0: nvidia-auto-select { ViewPortIn=800x600, ViewPortOut=1200x900+120+0 }; LVDS-0: nvidia-auto-select { ViewPortIn=640x480, ViewPortOut=1200x900+120+0 }"
So, TIL that the NVIDIA Linux driver is a grammar nazi :D jk

Anyway, I think that's all I need for now. Thanks for all your good work, NVIDIA :)


All times are GMT -5. The time now is 06:01 AM.

Powered by vBulletin® Version 3.7.1
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Copyright 1998 - 2014, nV News.