nvidia-xconfig man page

nvidia-xconfig is a tool intended to provide basic control over configuration options available in the NVIDIA X driver.

nvidia-xconfig performs its operations in several steps:

1)

The system X configuration file is found and read into memory. If no configuration file can be found, nvidia-xconfig generates one from scratch using default settings; in this case, nvidia-xconfig will automatically determine the name of the X configuration file to create: /etc/X11/xorg.conf if the X server in use is X.org or /etc/X11/XF86Config if the X server in use is XFree86.

2)

The configuration in memory is modified to support the NVIDIA driver. This consists of changing the display driver to "nvidia", removing the commands to load the "GLcore" and "dri" modules, and adding the command to load the "glx" module.

3)

The configuration in memory is modified according to the options specified on the command line. Please see the NVIDIA README for a description of the NVIDIA X configuration file options. Note that nvidia-xconfig does not perform any validation of the X configuration file options requested on the command line; X configuration file option validation is left for the NVIDIA X driver.

4)

The configuration is written back to the file from which it was read. A backup of the original configuration is created with ".backup" appended. For example, if your X configuration is /etc/X11/xorg.conf then nvidia-xconfig will copy it to /etc/X11/xorg.conf.backup before writing the new configuration. The --post-tree (-T) option can be used to print the new configuration to standard out in tree form instead. This option is useful to see what nvidia-xconfig will do while leaving the original configuration intact.

The source code to nvidia-xconfig is released under the GPL and available here:

This option writes the specified BusID to the device section of the X configuration file. If there are multiple device sections, then it adds the BusID field to each of them. To add the BusID to only a specific device or screen section, use the '--device' or '--screen' options.

By default, nvidia-xconfig preserves the existing BusID in the X configuration file only if there are multiple X screens configured for the X server. Use '--preserve-busid' or '--no-preserve-busid' to force the BusID to be preserved or not preserved, overriding the default behavior.

Enable or disable the "Coolbits" X configuration option. Setting this option will enable support in the NV-CONTROL X extension for manipulating GPU clock and GPU fan control settings. Default value is 0. For fan control set it to 4. WARNING: this may cause system damage and void warranties.

Enable or disable the "ConnectToAcpid" X configuration option. If this option is set, the NVIDIA X driver will attempt to connect to the Linux ACPI daemon (acpid). Set this option to off to prevent the X driver from attempting to connect to acpid.

Enable or disable the "ConstantDPI" X configuration option, which controls whether the NVIDIA X driver maintains a constant dots per inch (DPI) value by recomputing the reported size in millimeters of the X screen when XRandR changes the size in pixels of the X screen.

Enable or disable the "CustomEDID" X configuration option; setting this option forces the X driver to use the EDID specified.This option is a semicolon-separated list of pairs of display device names and filename pairs; e.g "CRT-0: mp\did.bin". Note that a display device name must always be specified even if only one EDID is specified.

The nvidia-xconfig utility operates on one or more devices in the X configuration file. If this option is specified, the device named DEVICE in the X configuration file will be used. If this option is not specified, all the devices within the X configuration file will be used.

Use OS-level events to notify the X server when a direct-rendering client has performed rendering that needs to be composited to the screen. Improves performance when using GLX with the composite extension.

Extract any raw EDID byte blocks contained in the specified X log file LOG ; raw EDID bytes are printed by the NVIDIA X driver to the X log as hexidecimal when verbose logging is enabled with the "-logverbose 6" X server commandline option. Any extracted EDIDs are then written as binary data to individual files. These files can later be used by the NVIDIA X driver through the "CustomEDID" X configuration option.

When the '--extract-edids-from-file' option is used, nvidia-xconfig writes any extracted EDID to a file, typically "edid.bin" in the current directory. Use this option to specify an alternate filename. Note that nvidia-xconfig, if necessary, will append a unique number to the EDID filename, to avoid overwriting existing files (e.g., "edid.bin.1" if "edid.bin" already exists).

Set the flat panel properties. The supported properties are 'dithering' and 'ditheringmode'. Please see the NVIDIA README 'Appendix B. X Config Options' for more details on the possible values and syntax.

Force generation of a new X config file, ignoring any existing system X config file. This is not typically recommended, as things like the mouse protocol, keyboard layout, font paths, etc, are setup by your Unix distribution. While nvidia-xconfig can attempt to infer these values, it is best to use your Unix distribution's X config file for the basis of anything that nvidia-xconfig creates.

Specify when the X server should use the builtin keyboard handler to process special key combinations (such as Ctrl+Alt+Backspace); see the X configuration man page for details. The value of WHEN can be 'Always', 'Never', or 'WhenNeeded'.

When generating a new X configuration file (which happens when no system X configuration file can be found, or the '--force-generate' option is specified), use KEYBOARD as the keyboard type, rather than attempting to probe the system for the keyboard type. For a list of possible keyboard types, see the '--keyboard-list' option.

In most cases nvidia-xconfig can automatically determine the correct keyboard driver to use (either 'kbd' or 'keyboard'). Use this option to override what nvidia-xconfig detects. Typically, if you are using an X.Org X server, use 'kdb'; if you are using an XFree86 X server, use 'keyboard'.

The nvidia-xconfig utility operates on a Server Layout within the X configuration file. If this option is specified, the layout named LAYOUT in the X configuration file will be used. If this option is not specified, the first Server Layout in the X configuration file is used.

When generating a new X configuration file (which happens when no system X configuration file can be found, or the '--force-generate' option is specified), use MOUSE as the mouse type, rather than attempting to probe the system for the mouse type. For a list of possible mouse types, see the '--mouse-list' option.

The nvidia-cfg library is used to communicate with the NVIDIA kernel module to query basic properties of every GPU in the system. This library is typically only used by nvidia-xconfig when configuring multiple X screens. This option tells nvidia-xconfig where to look for this library (in case it cannot find it on its own). This option should normally not be needed.

Like the '--tree' option, but goes through the full process of applying any user requested updates to the X configuration, before printing the final configuration to stdout in a tree format. Effectively, this option just causes the configuration to be printed to stdout as a tree instead of writing the results to file.

The nvidia-xconfig utility operates on one or more screens within a Server Layout in the X configuration file. If this option is specified, the screen named SCREEN in the X configuration file will be used. If this option is not specified, all screens within the selected Server Layout in the X configuration file will be used used.

A GPU that supports multiple simultaneous display devices can either drive these display devices in a single X screen, or as separate X screens. When the '--separate-x-screens' option is specified, each GPU on which an X screen is currently configured will be updated to have two or more (depending on the capabilities of that GPU) X screens configured. The '--no-separate-x-screens' option will remove any extra configured X screens on each GPU. Please see the NVIDIA README description of "Separate X Screens on One GPU" for further details.

A GPU that supports multiple simultaneous display devices can either drive these display devices in a single X screen, or as separate X screens. When the '--x-screens-per-gpu=<quantity>' option is specified, each GPU on which an X screen is currently configured will be updated to have <quantity> X screens. <quantity> has to be greater than 0. Setting <quantity> to 1 is equivalent to specifying the '--no-separate-x-screens' option. Please see the NVIDIA README description of "Separate X Screens on One GPU" for further details.

Enable or disable the "nvidiaXineramaInfoOrder" X configuration option. NVIDIA-XINERAMA-INFO-ORDER is a comma-separated list of display device names that describe the order in which nvidiaXineramaInfo should be reported. E.g., "CRT, DFP, TV".

Enable or disable use of the EDID (Extended Display Identification Data) from your display device(s). The EDID will be used for driver operations such as building lists of available modes, determining valid frequency ranges, and computing the DPI (Dots Per Inch). This option defaults to TRUE (the NVIDIA X driver will use the EDID, when available). It is NOT recommended that you use this option to globally disable use of the EDID; instead, use '--no-use-edid-freqs' or '--no-use-edid-dpi' to disable specific uses of the EDID.

Enable or disable use of the physical size information in the display device's EDID, if any, to compute the DPI (Dots Per Inch) of the X screen. This option defaults to TRUE (the NVIDIA X driver uses the EDID's physical size, when available, to compute the DPI).

Enable or disable use of the HorizSync and VertRefresh ranges given in a display device's EDID, if any. EDID provided range information will override the HorizSync and VertRefresh ranges specified in the Monitor section. This option defaults to TRUE (the NVIDIA X driver will use frequency information from the EDID, when available).

Enable or disable "UseEvents" X configuration option. Setting this option will enable the X driver to use the system events in some cases when it is waiting for the hardware. With this option X driver sets an event handler and waits for the hardware through the poll() system call. This option defaults to FALSE.

Set this option to specify the NVIDIA 3DVisionPro configuration file. Ensure X server has a read and write access permissions to this file. NVIDIA X driver stores the hub and the pairing configuration in this file to re-use across X restarts. If this option is not provided, 3D VisionPro configuration will not be stored.

When NVIDIA 3D Vision is enabled with a non 3D Vision ready display, use this option to specify the display type. Valid values are: 0 (Assume it is a CRT), 1 (Assume it is a DLP) and 2 (Assume it is a DLP TV and enable the checkerboard output).

Restore a backup of the X configuration that was made before any changes were made by nvidia-xconfig, if such a backup is available. This type of backup is made by nvidia-xconfig before it modifies an X configuration file that it has not previously touched; this is assumed to be an X configuration file that predates the involvement of the NVIDIA X driver. As an example, nvidia-xconfig will copy an X configuration file at /etc/X11/xorg.conf to /etc/X11/xorg.conf.nvidia-xconfig-original the first time it makes changes to that file.

Enable or disable the "ForceYUV420" X configuration option. Setting this option will enable YUV 4:2:0 compression on HDMI 2.0 4K@60hz modes if possible, even if the current display and GPU both support uncompressed RGB 4:4:4 output with these modes.