diff options
Diffstat (limited to 'option_table.h')
-rw-r--r-- | option_table.h | 395 |
1 files changed, 269 insertions, 126 deletions
diff --git a/option_table.h b/option_table.h index 148120a..41660d0 100644 --- a/option_table.h +++ b/option_table.h @@ -5,8 +5,7 @@ * * shortname - this is the one character short option name * - * flags - bitmask; possible values are NVGETOPT_HAS_ARGUMENT and - * NVGETOPT_IS_BOOLEAN + * flags - bitmask; see NVGETOPT_ constants in nvgetopt.h * * description - text for use by print_help() to describe the option */ @@ -21,21 +20,57 @@ #define FORCE_GENERATE_OPTION 9 #define MOUSE_LIST_OPTION 10 #define MODE_OPTION 11 -#define NVIDIA_CFG_PATH_OPTION 12 -#define NVAGP_OPTION 13 -#define SLI_OPTION 14 -#define DISABLE_SCF_OPTION 15 -#define DIGITAL_VIBRANCE_OPTION 16 +#define REMOVE_MODE_OPTION 12 +#define NVIDIA_CFG_PATH_OPTION 13 +#define NVAGP_OPTION 14 +#define SLI_OPTION 15 +#define DISABLE_SCF_OPTION 16 #define TRANSPARENT_INDEX_OPTION 17 #define STEREO_OPTION 18 #define ROTATE_OPTION 19 #define QUERY_GPU_INFO_OPTION 20 +#define EXTRACT_EDIDS_OUTPUT_FILE_OPTION 21 +#define MULTI_GPU_OPTION 22 +#define TWINVIEW_XINERAMA_INFO_ORDER_OPTION 23 +#define TWINVIEW_ORIENTATION_OPTION 24 +#define VIRTUAL_OPTION 25 + +/* + * To add a boolean option to nvidia-xconfig: + * + * 1) Add the definition of the constant to the "Boolean options" list + * in nvidia-xconfig.h + * + * 2) add an entry in the below (alphabetized) __options[] table; for + * the second field in the __options[] table, specify + * XCONFIG_BOOL_VAL(<your-new-constant>) + * + * 3) add an entry to the __options[] table at the top of options.c + * with the constant and the option name as it should appear in the X + * config file. + * + * nvidia-xconfig.c:parse_commandline() will record in + * op->boolean_options whether the commandline option was specified, + * and will record in op->boolean_option_values whether the option was + * specified to be true or false. options.c:update_options() will + * apply your boolean option to the X config file. + */ + + +#define XCONFIG_BOOL_OPTION_START 128 -#define XCONFIG_OPTION_START 128 + +/* + * The XCONFIG_BOOL_VAL() macro packs boolean options into the val + * field of the __option[] table; these are above 128, so that + * isalpha(3) returns FALSE for them. + */ + +#define XCONFIG_BOOL_VAL(x) (XCONFIG_BOOL_OPTION_START + (x)) /* * The OPTION_HELP_ALWAYS flag is or'ed into the nvgetopts flags, but - * is used by print_help() to know whether to print the help + * is only used by print_help() to know whether to print the help * information for that option all the time, or only when advanced * help is requested. */ @@ -45,92 +80,141 @@ static const NVGetoptOption __options[] = { /* These options are printed by "nvidia-xconfig --help" */ - { "xconfig", 'c', NVGETOPT_HAS_ARGUMENT | OPTION_HELP_ALWAYS, + { "xconfig", 'c', NVGETOPT_STRING_ARGUMENT | OPTION_HELP_ALWAYS, NULL, "Use [XCONFIG] as the input X config file; if this option is not " "specified, then the same search path used by the X server will be " "used to find the X configuration file." }, - { "output-xconfig", 'o', NVGETOPT_HAS_ARGUMENT | OPTION_HELP_ALWAYS, + { "output-xconfig", 'o', + NVGETOPT_STRING_ARGUMENT | OPTION_HELP_ALWAYS, NULL, "Use [OUTPUT-XCONFIG] as the output X configuration file; if this " "option is not specified, then the input X configuration filename will " - "also be used as the output filename." }, + "also be used as the output X configuration filename." }, - { "silent", 's', OPTION_HELP_ALWAYS, + { "silent", 's', OPTION_HELP_ALWAYS, NULL, "Run silently; no messages will be printed to stdout, except for " "warning and error messages to stderr." }, - { "tree", 't', OPTION_HELP_ALWAYS, + { "tree", 't', OPTION_HELP_ALWAYS, NULL, "Read the X configuration file, print to stdout the X " "configuration data in a tree format, and exit." }, - { "version", 'v', OPTION_HELP_ALWAYS, + { "version", 'v', OPTION_HELP_ALWAYS, NULL, "Print the nvidia-xconfig version and exit." }, - { "help", 'h', OPTION_HELP_ALWAYS, "Print usage information for the " - "common commandline options and exit." }, + { "help", 'h', OPTION_HELP_ALWAYS, NULL, + "Print usage information for the common commandline options and exit." }, - { "advanced-help", 'A', OPTION_HELP_ALWAYS, "Print usage information " - "for the common commandline options as well as the advanced options, " - "and then exit." }, + { "advanced-help", 'A', OPTION_HELP_ALWAYS, NULL, + "Print usage information for the common commandline options as well " + "as the advanced options, and then exit." }, /* These options are only printed by "nvidia-xconfig --advanced-help" */ { "add-argb-glx-visuals", - XCONFIG_OPTION_START + ADD_ARGB_GLX_VISUALS_OPTION, NVGETOPT_IS_BOOLEAN, + XCONFIG_BOOL_VAL(ADD_ARGB_GLX_VISUALS_BOOL_OPTION), + NVGETOPT_IS_BOOLEAN, NULL, "Enables or disables support for OpenGL rendering into 32-bit ARGB " "windows and pixmaps." }, - { "allow-ddcci", XCONFIG_OPTION_START + ALLOW_DDCCI_OPTION, - NVGETOPT_IS_BOOLEAN, "Enables or disables DDC/CI support in the " + { "allow-ddcci", XCONFIG_BOOL_VAL(ALLOW_DDCCI_BOOL_OPTION), + NVGETOPT_IS_BOOLEAN, NULL, "Enables or disables DDC/CI support in the " "NV-CONTROL X extension." }, - { "allow-dfp-stereo", - XCONFIG_OPTION_START + ALLOW_DFP_STEREO_OPTION, NVGETOPT_IS_BOOLEAN, + { "allow-dfp-stereo", XCONFIG_BOOL_VAL(ALLOW_DFP_STEREO_BOOL_OPTION), + NVGETOPT_IS_BOOLEAN, NULL, "Enable or disable the \"AllowDFPStereo\" X configuration option." }, { "allow-glx-with-composite", - XCONFIG_OPTION_START + ALLOW_GLX_WITH_COMPOSITE_OPTION, - NVGETOPT_IS_BOOLEAN, "Enable or disable the \"AllowGLXWithComposite\" " - "X configuration option." }, + XCONFIG_BOOL_VAL(ALLOW_GLX_WITH_COMPOSITE_BOOL_OPTION), + NVGETOPT_IS_BOOLEAN, NULL, + "Enable or disable the \"AllowGLXWithComposite\" X configuration " + "option." }, - { "bandwidth-test", - XCONFIG_OPTION_START + NO_BANDWIDTH_TEST_OPTION, NVGETOPT_IS_BOOLEAN, + { "bandwidth-test", XCONFIG_BOOL_VAL(NO_BANDWIDTH_TEST_BOOL_OPTION), + NVGETOPT_IS_BOOLEAN, NULL, "Disable or enable the \"NoBandWidthTest\" X configuration option." }, { "composite", - XCONFIG_OPTION_START + COMPOSITE_OPTION, NVGETOPT_IS_BOOLEAN, + XCONFIG_BOOL_VAL(COMPOSITE_BOOL_OPTION), NVGETOPT_IS_BOOLEAN, NULL, "Enable or disable the \"Composite\" X extension." }, - { "dac-8bit", XCONFIG_OPTION_START + DAC_8BIT_OPTION, NVGETOPT_IS_BOOLEAN, + { "constant-dpi", + XCONFIG_BOOL_VAL(CONSTANT_DPI_BOOL_OPTION), NVGETOPT_IS_BOOLEAN, NULL, + "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." }, + + { "dac-8bit", XCONFIG_BOOL_VAL(DAC_8BIT_BOOL_OPTION), + NVGETOPT_IS_BOOLEAN, NULL, "Most Quadro parts by default use a 10 bit color look up table (LUT) " "by default; setting this option to TRUE forces these graphics chips " "to use an 8 bit (LUT)." }, - { "ddc", - XCONFIG_OPTION_START + IGNORE_EDID_OPTION, NVGETOPT_IS_BOOLEAN, - "Synonym for \"ignore-edid\"" }, - - { "depth", 'd', NVGETOPT_HAS_ARGUMENT, + { "depth", 'd', NVGETOPT_INTEGER_ARGUMENT, NULL, "Set the default depth to [DEPTH]; valid values for [DEPTH] are " "8, 15, 16 and 24." }, - { "digital-vibrance", DIGITAL_VIBRANCE_OPTION, - NVGETOPT_IS_INTEGER | NVGETOPT_HAS_ARGUMENT, - "Enables digital vibrance control. Valid values for " - "[DIGITAL-VIBRANCE] are 0-255." }, + { "disable-glx-root-clipping", + XCONFIG_BOOL_VAL(DISABLE_GLX_ROOT_CLIPPING_BOOL_OPTION), + NVGETOPT_IS_BOOLEAN, NULL, "Disable or enable clipping OpenGL rendering " + "to the root window via the \"DisableGLXRootClipping\" " + "X configuration option." }, + + { "damage-events", + XCONFIG_BOOL_VAL(DAMAGE_EVENTS_BOOL_OPTION), + NVGETOPT_IS_BOOLEAN, NULL, "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." }, + +#if defined(NV_SUNOS) + { "disable-scf", DISABLE_SCF_OPTION, 0, NULL, + "On Solaris, nvidia-xconfig updates the service configuration " + "repository with the default depth being set in the X configuration " + "file. The property 'default_depth' of the group 'options' in the " + "selection 'application/x11/x11-server' is set to the default depth. " + "Use this option to disable the service configuration repository " + "update." }, +#endif - { "enable-all-gpus", 'a', 0, + { "dynamic-twinview", XCONFIG_BOOL_VAL(DYNAMIC_TWINVIEW_BOOL_OPTION), + NVGETOPT_IS_BOOLEAN, NULL, + "Enable or disable support for dynamically configuring TwinView." }, + + { "enable-all-gpus", 'a', 0, NULL, "Configure an X screen on every GPU in the system." }, { "exact-mode-timings-dvi", - XCONFIG_OPTION_START + EXACT_MODE_TIMINGS_DVI_OPTION, - NVGETOPT_IS_BOOLEAN, "Forces the initialization of the X server with " + XCONFIG_BOOL_VAL(EXACT_MODE_TIMINGS_DVI_BOOL_OPTION), + NVGETOPT_IS_BOOLEAN, NULL, + "Forces the initialization of the X server with " "the exact timings specified in the ModeLine." }, - { "flip", XCONFIG_OPTION_START + NOFLIP_OPTION, NVGETOPT_IS_BOOLEAN, + { "extract-edids-from-log", 'E', NVGETOPT_STRING_ARGUMENT, "LOG", + "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." }, + + { "extract-edids-output-file", + EXTRACT_EDIDS_OUTPUT_FILE_OPTION, NVGETOPT_STRING_ARGUMENT, "FILENAME", + "When the '--extract-edids-from-log' 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)." }, + + { "flip", XCONFIG_BOOL_VAL(NOFLIP_BOOL_OPTION), NVGETOPT_IS_BOOLEAN, NULL, "Enable or disable OpenGL flipping" }, - { "force-generate", FORCE_GENERATE_OPTION, 0, + { "force-generate", FORCE_GENERATE_OPTION, 0, NULL, "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 " @@ -139,24 +223,19 @@ static const NVGetoptOption __options[] = { "X config file for the basis of anything that nvidia-xconfig creates." }, { "force-stereo-flipping", - XCONFIG_OPTION_START + FORCE_STEREO_FLIPPING_OPTION, NVGETOPT_IS_BOOLEAN, + XCONFIG_BOOL_VAL(FORCE_STEREO_FLIPPING_BOOL_OPTION), + NVGETOPT_IS_BOOLEAN, NULL, "Normally, stereo flipping is only performed when a stereo drawable is " "visible. This option forces stereo flipping even when no stereo " "drawables are visible." }, - { "ignore-edid", - XCONFIG_OPTION_START + IGNORE_EDID_OPTION, NVGETOPT_IS_BOOLEAN, - "Disable or enable probing of EDID (Extended Display Identification " - "Data) from your monitor." }, - - { "use-edid-freqs", - XCONFIG_OPTION_START + USE_EDID_FREQS_OPTION, NVGETOPT_IS_BOOLEAN, - "Allow or disallow the X server to use 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." }, + { "include-implicit-metamodes", + XCONFIG_BOOL_VAL(INCLUDE_IMPLICIT_METAMODES_BOOL_OPTION), + NVGETOPT_IS_BOOLEAN, NULL, + "Enable or disable the \"IncludeImplicitMetaModes\" X configuration " + "option." }, - { "keyboard", KEYBOARD_OPTION, NVGETOPT_HAS_ARGUMENT, + { "keyboard", KEYBOARD_OPTION, NVGETOPT_STRING_ARGUMENT, NULL, "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 " @@ -164,67 +243,73 @@ static const NVGetoptOption __options[] = { "For a list of possible keyboard types, see the '--keyboard-list' " "option." }, - { "keyboard-driver", KEYBOARD_DRIVER_OPTION, NVGETOPT_HAS_ARGUMENT, + { "keyboard-driver", KEYBOARD_DRIVER_OPTION, + NVGETOPT_STRING_ARGUMENT, "DRIVER", "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 " + "using an X.Org X server, use 'kdb'; if you are using an XFree86 X " "server, use 'keyboard'." }, - { "keyboard-list", KEYBOARD_LIST_OPTION, 0, + { "keyboard-list", KEYBOARD_LIST_OPTION, 0, NULL, "Print to stdout the available keyboard types recognized by the " "'--keyboard' option, and then exit." }, - { "layout", LAYOUT_OPTION, NVGETOPT_HAS_ARGUMENT, + { "layout", LAYOUT_OPTION, NVGETOPT_STRING_ARGUMENT, NULL, "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." }, - { "screen", SCREEN_OPTION, NVGETOPT_HAS_ARGUMENT, - "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." }, - { "load-kernel-module", - XCONFIG_OPTION_START + LOAD_KERNEL_MODULE_OPTION, NVGETOPT_IS_BOOLEAN, + XCONFIG_BOOL_VAL(LOAD_KERNEL_MODULE_BOOL_OPTION), + NVGETOPT_IS_BOOLEAN, NULL, "Allow or disallow NVIDIA Linux X driver module to load the NVIDIA " "Linux kernel module automatically."}, { "logo", - XCONFIG_OPTION_START + NOLOGO_OPTION, NVGETOPT_IS_BOOLEAN, + XCONFIG_BOOL_VAL(NOLOGO_BOOL_OPTION), NVGETOPT_IS_BOOLEAN, NULL, "Disable or enable the \"NoLogo\" X configuration option." }, - { "mode", MODE_OPTION, NVGETOPT_IS_BOOLEAN | NVGETOPT_HAS_ARGUMENT, - "Adds or removes the specified mode from the mode list." }, + { "mode", + MODE_OPTION, NVGETOPT_IS_BOOLEAN | NVGETOPT_STRING_ARGUMENT, NULL, + "Add the specified mode to the mode list." }, + + { "remove-mode", REMOVE_MODE_OPTION, NVGETOPT_STRING_ARGUMENT, "MODE", + "Remove the specified mode from the mode list." }, - { "mouse", MOUSE_OPTION, NVGETOPT_HAS_ARGUMENT, + { "mouse", MOUSE_OPTION, NVGETOPT_STRING_ARGUMENT, NULL, "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." }, - { "mouse-list", MOUSE_LIST_OPTION, 0, + { "mouse-list", MOUSE_LIST_OPTION, 0, NULL, "Print to stdout the available mouse types recognized by the " "'--mouse' option, and then exit." }, + { "multigpu", MULTI_GPU_OPTION, + NVGETOPT_STRING_ARGUMENT | NVGETOPT_ALLOW_DISABLE, NULL, + "Enable or disable MultiGPU. Valid values for [MULTIGPU] are 'Off', " + " 'Auto', 'AFR', 'SFR', 'AA'." }, + { "multisample-compatibility", - XCONFIG_OPTION_START + MULTISAMPLE_COMPATIBILITY_OPTION, - NVGETOPT_IS_BOOLEAN, "Enable or disable the use of separate front and " + XCONFIG_BOOL_VAL(MULTISAMPLE_COMPATIBILITY_BOOL_OPTION), + NVGETOPT_IS_BOOLEAN, NULL, + "Enable or disable the use of separate front and " "back multisample buffers." }, - { "nvagp", NVAGP_OPTION, NVGETOPT_HAS_ARGUMENT, + { "nvagp", NVAGP_OPTION, + NVGETOPT_STRING_ARGUMENT | NVGETOPT_ALLOW_DISABLE, NULL, "Set the NvAGP X config option value. Possible values are 0 (no AGP), " "1 (NVIDIA's AGP), 2 (AGPGART), 3 (try AGPGART, then try NVIDIA's AGP); " "these values can also be specified as 'none', 'nvagp', 'agpgart', or " "'any'." }, - { "nvidia-cfg-path", NVIDIA_CFG_PATH_OPTION, NVGETOPT_HAS_ARGUMENT, + { "nvidia-cfg-path", + NVIDIA_CFG_PATH_OPTION, NVGETOPT_STRING_ARGUMENT, "PATH", "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 " @@ -236,24 +321,25 @@ static const NVGetoptOption __options[] = { "Disable all but one X screen." }, { "overlay", - XCONFIG_OPTION_START + OVERLAY_OPTION, NVGETOPT_IS_BOOLEAN, + XCONFIG_BOOL_VAL(OVERLAY_BOOL_OPTION), NVGETOPT_IS_BOOLEAN, NULL, "Enable or disable the \"Overlay\" X configuration option." }, { "cioverlay", - XCONFIG_OPTION_START + CIOVERLAY_OPTION, NVGETOPT_IS_BOOLEAN, + XCONFIG_BOOL_VAL(CIOVERLAY_BOOL_OPTION), NVGETOPT_IS_BOOLEAN, NULL, "Enable or disable the color index overlay." }, + { "overlay-default-visual", + XCONFIG_BOOL_VAL(OVERLAY_DEFAULT_VISUAL_BOOL_OPTION), + NVGETOPT_IS_BOOLEAN, NULL, + "Enable or disable the \"OverlayDefaultVisual\" " + "X configuration option." }, + { "transparent-index", TRANSPARENT_INDEX_OPTION, - NVGETOPT_IS_INTEGER | NVGETOPT_HAS_ARGUMENT, + NVGETOPT_INTEGER_ARGUMENT | NVGETOPT_ALLOW_DISABLE, "INDEX", "Pixel to use as transparent when using color index overlays. " "Valid values for [TRANSPARENT-INDEX] are 0-255."}, - { "overlay-default-visual", - XCONFIG_OPTION_START + OVERLAY_DEFAULT_VISUAL_OPTION, - NVGETOPT_IS_BOOLEAN, "Enable or disable the \"OverlayDefaultVisual\" " - "X configuration option." }, - - { "post-tree", 'T', 0, + { "post-tree", 'T', 0, NULL, "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. " @@ -261,32 +347,49 @@ static const NVGetoptOption __options[] = { "to stdout as a tree instead of writing the results to file." }, { "power-connector-check", - XCONFIG_OPTION_START + NO_POWER_CONNECTOR_CHECK_OPTION, - NVGETOPT_IS_BOOLEAN, "Disable or enable the \"NoPowerConnectorCheck\" " + XCONFIG_BOOL_VAL(NO_POWER_CONNECTOR_CHECK_BOOL_OPTION), + NVGETOPT_IS_BOOLEAN, NULL, + "Disable or enable the \"NoPowerConnectorCheck\" " "X configuration option." }, - { "query-gpu-info", QUERY_GPU_INFO_OPTION, 0, + { "probe-all-gpus", XCONFIG_BOOL_VAL(PROBE_ALL_GPUS_BOOL_OPTION), + NVGETOPT_IS_BOOLEAN, NULL, + "Disable or enable the \"ProbeAllGpus\" X configuration option." }, + + + { "query-gpu-info", QUERY_GPU_INFO_OPTION, 0, NULL, "Print information about all recognized NVIDIA GPUs in the system." }, { "randr-rotation", - XCONFIG_OPTION_START + RANDR_ROTATION_OPTION, NVGETOPT_IS_BOOLEAN, + XCONFIG_BOOL_VAL(RANDR_ROTATION_BOOL_OPTION), NVGETOPT_IS_BOOLEAN, NULL, "Enable or disable the \"RandRRotation\" X configuration option." }, - { "rotate", - ROTATE_OPTION, NVGETOPT_HAS_ARGUMENT, - "Enable or disable the \"Rotate\" X configuration option. Valid values " - "for [ROTATE] are 'normal', 'left', 'inverted', and 'right'." }, - { "render-accel", - XCONFIG_OPTION_START + RENDER_ACCEL_OPTION, NVGETOPT_IS_BOOLEAN, + XCONFIG_BOOL_VAL(RENDER_ACCEL_BOOL_OPTION), NVGETOPT_IS_BOOLEAN, NULL, "Enable or disable the \"RenderAccel\" X configuration option." }, { "render-extension", - XCONFIG_OPTION_START + NO_RENDER_EXTENSION_OPTION, NVGETOPT_IS_BOOLEAN, + XCONFIG_BOOL_VAL(NO_RENDER_EXTENSION_BOOL_OPTION), + NVGETOPT_IS_BOOLEAN, NULL, "Disable or enable the \"NoRenderExtension\" X configuration option." }, + { "rotate", + ROTATE_OPTION, NVGETOPT_STRING_ARGUMENT | NVGETOPT_ALLOW_DISABLE, NULL, + "Enable or disable the \"Rotate\" X configuration option. Valid values " + "for [ROTATE] are 'normal', 'left', 'CCW', 'inverted', " + "'right', and 'CW'. Rotation can be disabled " }, + + { "screen", SCREEN_OPTION, NVGETOPT_STRING_ARGUMENT, NULL, + "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." }, + { "separate-x-screens", - XCONFIG_OPTION_START + SEPARATE_X_SCREENS_OPTION, NVGETOPT_IS_BOOLEAN, + XCONFIG_BOOL_VAL(SEPARATE_X_SCREENS_BOOL_OPTION), + NVGETOPT_IS_BOOLEAN, NULL, "A GPU that supports multiple simultaneous display devices can either " "drive these display devices in TwinView, or as separate X screens. " "When the '--separate-x-screens' option is specified, each GPU on which " @@ -296,53 +399,93 @@ static const NVGetoptOption __options[] = { "README description of \"Separate X Screens on One GPU\" for further " "details." }, - { "sli", SLI_OPTION, NVGETOPT_HAS_ARGUMENT, + { "sli", SLI_OPTION, + NVGETOPT_STRING_ARGUMENT | NVGETOPT_ALLOW_DISABLE, NULL, "Enable or disable SLI. Valid values for [SLI] are 'Off', 'Auto', " - "'AFR', 'SFR', and 'SLIAA'." }, + "'AFR', 'SFR', 'AA', 'AFRofAA'." }, - { "stereo", STEREO_OPTION, NVGETOPT_IS_INTEGER | NVGETOPT_HAS_ARGUMENT, - "Enable/Disable the stereo mode. Valid values for [STEREO] are: 1 " + { "stereo", STEREO_OPTION, + NVGETOPT_INTEGER_ARGUMENT | NVGETOPT_ALLOW_DISABLE, NULL, + "Enable or disable the stereo mode. Valid values for [STEREO] are: 1 " "(DCC glasses), 2 (Blueline glasses), 3 (Onboard stereo), 4 (TwinView " "clone mode stereo), 5 (SeeReal digital flat panel), 6 (Sharp3D " "digital flat panel)." }, - { "twinview", XCONFIG_OPTION_START + TWINVIEW_OPTION, NVGETOPT_IS_BOOLEAN, - "Enable or disable TwinView." }, + { "twinview", XCONFIG_BOOL_VAL(TWINVIEW_BOOL_OPTION), + NVGETOPT_IS_BOOLEAN, NULL, "Enable or disable TwinView." }, + { "twinview-orientation", TWINVIEW_ORIENTATION_OPTION, + NVGETOPT_STRING_ARGUMENT | NVGETOPT_ALLOW_DISABLE, "ORIENTATION", + "Specify the TwinViewOrientation. Valid values for [ORIENTATION] are: " + "\"RightOf\" (the default), \"LeftOf\", \"Above\", \"Below\", or " + "\"Clone\"." }, + { "twinview-xinerama-info", - XCONFIG_OPTION_START + NO_TWINVIEW_XINERAMA_INFO_OPTION, - NVGETOPT_IS_BOOLEAN, + XCONFIG_BOOL_VAL(NO_TWINVIEW_XINERAMA_INFO_BOOL_OPTION), + NVGETOPT_IS_BOOLEAN, NULL, "Prohibits providing Xinerama information when in TwinView." }, + { "twinview-xinerama-info-order", + TWINVIEW_XINERAMA_INFO_ORDER_OPTION, + NVGETOPT_STRING_ARGUMENT | NVGETOPT_ALLOW_DISABLE, NULL, + "Enable or disable the \"TwinViewXineramaInfoOrder\" X configuration " + "option. [TWINVIEW-XINERAMA-INFO-ORDER] is a comma-separated list " + "of display device names that describe the order in which " + "TwinViewXineramaInfo should be reported. E.g., \"CRT, DFP, TV\"." }, + { "ubb", - XCONFIG_OPTION_START + UBB_OPTION, NVGETOPT_IS_BOOLEAN, + XCONFIG_BOOL_VAL(UBB_BOOL_OPTION), NVGETOPT_IS_BOOLEAN, NULL, "Enable or disable the \"UBB\" X configuration option." }, + { "use-edid", + XCONFIG_BOOL_VAL(USE_EDID_BOOL_OPTION), NVGETOPT_IS_BOOLEAN, NULL, + "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." }, + + { "use-edid-dpi", + XCONFIG_BOOL_VAL(USE_EDID_DPI_BOOL_OPTION), NVGETOPT_IS_BOOLEAN, NULL, + "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)." }, + + { "use-edid-freqs", + XCONFIG_BOOL_VAL(USE_EDID_FREQS_BOOL_OPTION), NVGETOPT_IS_BOOLEAN, NULL, + "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)." }, + { "use-int10-module", - XCONFIG_OPTION_START + USE_INT10_MODULE_OPTION, NVGETOPT_IS_BOOLEAN, + XCONFIG_BOOL_VAL(USE_INT10_MODULE_BOOL_OPTION), + NVGETOPT_IS_BOOLEAN, NULL, "Enable use of the X Int10 module to soft-boot all secondary cards, " "rather than POSTing the cards through the NVIDIA kernel module." }, - { "x-prefix", X_PREFIX_OPTION, NVGETOPT_HAS_ARGUMENT, + { "virtual", VIRTUAL_OPTION, + NVGETOPT_STRING_ARGUMENT | NVGETOPT_ALLOW_DISABLE, "WIDTHxHEIGHT", + "Specify the virtual screen resolution." }, + + { "x-prefix", X_PREFIX_OPTION, NVGETOPT_STRING_ARGUMENT, NULL, "The X installation prefix; the default is /usr/X11R6/. Only " "under rare circumstances should this option be needed." }, - { "xinerama", XCONFIG_OPTION_START + XINERAMA_OPTION, NVGETOPT_IS_BOOLEAN, - "Enable or disable Xinerama." }, + { "xinerama", XCONFIG_BOOL_VAL(XINERAMA_BOOL_OPTION), + NVGETOPT_IS_BOOLEAN, NULL, "Enable or disable Xinerama." }, { "xvmc-uses-textures", - XCONFIG_OPTION_START + XVMC_USES_TEXTURES_OPTION, NVGETOPT_IS_BOOLEAN, + XCONFIG_BOOL_VAL(XVMC_USES_TEXTURES_BOOL_OPTION), + NVGETOPT_IS_BOOLEAN, NULL, "Forces XvMC to use the 3D engine for XvMCPutSurface requests rather " "than the video overlay." }, -#if defined(NV_SUNOS) - { "disable-scf", DISABLE_SCF_OPTION, 0, - "On Solaris, nvidia-xconfig updates the service configuration repository " - "with the default depth being set in the X configuration file. " - "The property 'default_depth' of the group 'options' in the " - "selection 'application/x11/x11-server' is set to the default depth. " - "Use this option to disable the service configuration repository update." }, -#endif - - { NULL, 0 , 0, NULL }, + { NULL, 0, 0, NULL, NULL }, }; |