View Single Post
Old 06-21-12, 03:28 AM   #9
NVIDIA Corporation
aritger's Avatar
Join Date: Oct 2002
Posts: 53
Default Re: 320.17 can't detect video modes on Lenovo laptop

Hi again Tim.

Unfortunately the nvidia-settings display configuration page hasn't been updated yet to be aware of ViewPortIn, so it isn't going to be helpful in this case. We hope to address that soon. Also, we hope to update the display configuration page such that it offers a list of common resolutions, supplementing the current list of resolutions in the "Resolution" drop down. When those fake resolutions are selected, nvidia-settings will generate a MetaMode with the correct ViewPortIn configuration. I'm sorry we don't have that, yet.

I think one thing that is causing confusion is the distinction between "mode" and MetaMode. The X driver's log messages are a bit sloppy about this, which doesn't help (I'll try to get that cleaned up, too). Anyway:

* A "mode" is the set of timings to drive to the monitor; this contains size, refresh rate, blanking periods, etc. With current 302.xx drivers, the "Resolution" drop down is giving the list of available modes.

* A "MetaMode" defines what mode should be used on each monitor, where each monitor should be positioned in the desktop, the ViewPortIn to use with each mode on each monitor, etc.

It kind of sounds like you were expecting that when you put multiple MetaModes in your MetaModes X configuration option, each would be listed as an option in the Resolution drop down of nvidia-settings. A MetaMode has wider scope than that; it won't affect the list of resolutions per monitor in nvidia-settings. Sorry that was unclear.

The MetaModes X configuration option is a semi-colon separated list of MetaModes. You can switch between MetaModes through the old-school XF86VidMode X extension (e.g., `xvidtune -prev` or `xvidtune -next`) or through the key combination ctrl-alt-plus or ctrl-alt-minus. Further, the nvidia-settings display configuration page, or `nvidia-settings --assign CurrentMetaMode="foo"`, overwrites the current MetaMode in the list of MetaModes that you specified in your X configuration file.

Anyway, putting multiple MetaModes in your X configuration file is probably not the easiest method. For what you're trying to do, for right now probably the simplest solution is to write a few scripts that invoke nvidia-settings with canned CurrentMetaModes values. E.g.,

$ cat
nvidia-settings --assign CurrentMetaMode="DFP:nvidia-auto-select {ViewPortIn=1024x768}, CRT:1024x768"

I realize that is far from ideal; hopefully we can update the nvidia-settings display configuration page in the near future.

Please let me know if you continue to have problems.

- Andy
Andy Ritger
NVIDIA Linux Graphics Driver Engineer
aritger is offline   Reply With Quote