1 .\" shorthand for double quote that works everywhere.
3 .TH xorg.conf __filemansuffix__ __vendorversion__
5 xorg.conf, __xconfigdir__ \- configuration files for
9 supports several mechanisms for supplying/obtaining configuration and
10 run-time parameters: command line options, environment variables, the
11 xorg.conf and __xconfigdir__ configuration files, auto-detection,
12 and fallback defaults. When the same information is supplied in more
13 than one way, the highest precedence mechanism is used. The list of
14 mechanisms is ordered from highest precedence to lowest. Note that not
15 all parameters can be supplied via all methods. The available command
16 line options and environment variables (and some defaults) are
17 described in the Xserver(__appmansuffix__) and
18 Xorg(__appmansuffix__) manual pages. Most configuration file
19 parameters, with their defaults, are described below. Driver and module
20 specific configuration parameters are described in the relevant driver
21 or module manual page.
24 uses a configuration file called
26 and files ending in the suffix
30 for its initial setup.
33 configuration file is searched for in the following places when the
34 server is started as a normal user:
38 .IR /etc/X11/ <cmdline>
39 .IR __projectroot__/etc/X11/ <cmdline>
40 .IB /etc/X11/ $XORGCONFIG
41 .IB __projectroot__/etc/X11/ $XORGCONFIG
44 .IR __projectroot__/etc/X11/xorg.conf. <hostname>
45 .I __projectroot__/etc/X11/xorg.conf
46 .IR __projectroot__/lib/X11/xorg.conf. <hostname>
47 .I __projectroot__/lib/X11/xorg.conf
53 is a relative path (with no \(lq..\(rq components) specified with the
57 is the relative path (with no \(lq..\(rq components) specified by that
58 environment variable, and
60 is the machine's hostname as reported by
61 .BR gethostname (__libmansuffix__).
63 When the Xorg server is started by the \(lqroot\(rq user, the config file
64 search locations are as follows:
69 .IR /etc/X11/ <cmdline>
70 .IR __projectroot__/etc/X11/ <cmdline>
72 .IB /etc/X11/ $XORGCONFIG
73 .IB __projectroot__/etc/X11/ $XORGCONFIG
76 .IR __projectroot__/etc/X11/xorg.conf. <hostname>
77 .I __projectroot__/etc/X11/xorg.conf
78 .IR __projectroot__/lib/X11/xorg.conf. <hostname>
79 .I __projectroot__/lib/X11/xorg.conf
85 is the path specified with the
87 command line option (which may be absolute or relative),
89 is the path specified by that
90 environment variable (absolute or relative),
92 is the path specified by that environment variable (usually the home
95 is the machine's hostname as reported by
96 .BR gethostname (__libmansuffix__).
98 Additional configuration files are searched for in the following
99 directories when the server is started as a normal user:
103 .IR /etc/X11/ <cmdline>
104 .IR __sysconfdir__/X11/ <cmdline>
105 .I /etc/X11/__xconfigdir__
106 .I __sysconfdir__/X11/__xconfigdir__
112 is a relative path (with no \(lq..\(rq components) specified with the
116 When the Xorg server is started by the \(lqroot\(rq user, the
117 config directory search locations are as follows:
122 .IR /etc/X11/ <cmdline>
123 .IR __sysconfdir__/X11/ <cmdline>
124 .I /etc/X11/__xconfigdir__
125 .I __sysconfdir__/X11/__xconfigdir__
131 is the path specified with the
133 command line option (which may be absolute or relative).
135 Finally, configuration files will also be searched for in directories
136 reserved for system use. These are to separate configuration files from
137 the vendor or 3rd party packages from those of local administration.
138 These files are found in the following directories:
142 .I /usr/share/X11/__xconfigdir__
143 .I __datadir__/X11/__xconfigdir__
151 files are composed of a number of sections which may be present in any order,
152 or omitted to use default configuration values.
153 Each section has the form:
157 .BI "Section \*q" SectionName \*q
164 The section names are:
168 .BR "Files " "File pathnames"
169 .BR "ServerFlags " "Server flags"
170 .BR "Module " "Dynamic module loading"
171 .BR "Extensions " "Extension enabling"
172 .BR "InputDevice " "Input device description"
173 .BR "InputClass " "Input class description"
174 .BR "Device " "Graphics device description"
175 .BR "VideoAdaptor " "Xv video adaptor description"
176 .BR "Monitor " "Monitor description"
177 .BR "Modes " "Video modes descriptions"
178 .BR "Screen " "Screen configuration"
179 .BR "ServerLayout " "Overall layout"
180 .BR "DRI " "DRI\-specific configuration"
181 .BR "Vendor " "Vendor\-specific configuration"
185 The following obsolete section names are still recognised for compatibility
187 In new config files, the
189 section should be used instead.
193 .BR "Keyboard " "Keyboard configuration"
194 .BR "Pointer " "Pointer/mouse configuration"
200 section is no longer recognised.
204 sections are at the highest level.
205 They bind together the input and output devices that will be used in a session.
206 The input devices are described in the
209 Output devices usually consist of multiple independent components (e.g.,
210 a graphics board and a monitor).
211 These multiple components are bound together in the
213 sections, and it is these that are referenced by the
218 section binds together a graphics board and a monitor.
219 The graphics boards are described in the
221 sections, and the monitors are described in the
225 Config file keywords are case\-insensitive, and \(lq_\(rq characters are
227 Most strings (including
229 names) are also case-insensitive, and insensitive to white space and
230 \(lq_\(rq characters.
232 Each config file entry usually takes up a single line in the file. They
233 consist of a keyword, which is possibly followed by one or more arguments,
234 with the number and types of the arguments depending on the keyword.
235 The argument types are:
239 .BR "Integer " "an integer number in decimal, hex or octal"
240 .BR "Real " "a floating point number"
241 .BR "String " "a string enclosed in double quote marks (\*q)"
245 Note: hex integer values must be prefixed with \(lq0x\(rq, and octal values
248 A special keyword called
250 may be used to provide free\-form data to various components of the server.
253 keyword takes either one or two string arguments.
254 The first is the option name, and the optional second argument is the
256 Some commonly used option value types include:
260 .BR "Integer " "an integer number in decimal, hex or octal"
261 .BR "Real " "a floating point number"
262 .BR "String " "a sequence of characters"
263 .BR "Boolean " "a boolean value (see below)"
264 .BR "Frequency " "a frequency value (see below)"
271 values, not just strings, must be enclosed in quotes.
273 Boolean options may optionally have a value specified.
274 When no value is specified, the option's value is
276 The following boolean option values are recognised as
286 and the following boolean option values are recognised as
296 If an option name is prefixed with
298 then the option value is negated.
300 Example: the following option entries are equivalent:
304 .B "Option \*qAccel\*q \*qOff\*q"
305 .B "Option \*qNoAccel\*q"
306 .B "Option \*qNoAccel\*q \*qOn\*q"
307 .B "Option \*qAccel\*q \*qfalse\*q"
308 .B "Option \*qAccel\*q \*qno\*q"
312 Frequency option values consist of a real number that is optionally
313 followed by one of the following frequency units:
323 When the unit name is omitted, the correct units will be determined from
324 the value and the expectations of the appropriate range of the value.
325 It is recommended that the units always be specified when using frequency
326 option values to avoid any errors in determining the value.
330 section is used to specify some path names required by the server.
331 Some of these paths can also be set from the command line (see
332 .BR Xserver (__appmansuffix__)
334 .BR Xorg (__appmansuffix__)).
335 The command line settings override the values specified in the config
339 section is optional, as are all of the entries that may appear in it.
341 The entries that can appear in this section are:
343 .BI "FontPath \*q" path \*q
344 sets the search path for fonts.
345 This path is a comma separated list of font path elements which the Xorg
346 server searches for font databases.
349 entries may be specified, and they will be concatenated to build up the
350 fontpath used by the server. Font path elements can be absolute
351 directory paths, catalogue directories or a font server identifier. The
352 formats of the later two are explained below:
355 Catalogue directories:
358 Catalogue directories can be specified using the prefix \fBcatalogue:\fR
359 before the directory name. The directory can then be populated with
360 symlinks pointing to the real font directories, using the following
361 syntax in the symlink name:
364 .IR <identifier> : [attribute]: pri= <priority>
369 is an alphanumeric identifier,
371 is an attribute which will be passed to the underlying FPE and
373 is a number used to order the fontfile FPEs. Examples:
377 .I 75dpi:unscaled:pri=20 -> /usr/share/X11/fonts/75dpi
378 .I gscript:pri=60 -> /usr/share/fonts/default/ghostscript
379 .I misc:unscaled:pri=10 \-> /usr/share/X11/fonts/misc
387 Font server identifiers:
390 Font server identifiers have the form:
393 .IR <trans> / <hostname> : <port\-number>
398 is the transport type to use to connect to the font server (e.g.,
400 for UNIX\-domain sockets or
402 for a TCP/IP connection),
404 is the hostname of the machine running the font server, and
406 is the port number that the font server is listening on (usually 7100).
409 When this entry is not specified in the config file, the server falls back
410 to the compiled\-in default font path, which contains the following
411 font path elements (which can be set inside a catalogue directory):
415 .I __datadir__/fonts/X11/misc/
416 .I __datadir__/fonts/X11/TTF/
417 .I __datadir__/fonts/X11/OTF/
418 .I __datadir__/fonts/X11/Type1/
419 .I __datadir__/fonts/X11/100dpi/
420 .I __datadir__/fonts/X11/75dpi/
424 Font path elements that are found to be invalid are removed from the
425 font path when the server starts up.
428 .BI "ModulePath \*q" path \*q
429 sets the search path for loadable Xorg server modules.
430 This path is a comma separated list of directories which the Xorg server
431 searches for loadable modules loading in the order specified.
434 entries may be specified, and they will be concatenated to build the
435 module search path used by the server. The default module path is
440 .\" The LogFile keyword is not currently implemented
443 .BI "LogFile \*q" path \*q
444 sets the name of the Xorg server log file.
445 The default log file name is
448 .RI __logdir__/Xorg. <n> .log
454 is the display number for the Xorg server.
457 .BI "XkbDir \*q" path \*q
458 sets the base directory for keyboard layout files. The
460 command line option can be used to override this. The default directory is
465 .SH "SERVERFLAGS SECTION"
466 In addition to options specific to this section (described below), the
468 section is used to specify some global
470 All of the entries in this section are
472 although for compatibility purposes some of the old style entries are
474 Those old style entries are not documented here, and using them is
478 section is optional, as are the entries that may be specified in it.
481 specified in this section (with the exception of the
482 .B \*qDefaultServerLayout\*q
486 specified in the active
489 Options with command line equivalents are overridden when their command
490 line equivalent is used.
491 The options recognised by this section are:
493 .BI "Option \*qDefaultServerLayout\*q \*q" layout\-id \*q
494 This specifies the default
496 section to use in the absence of the
500 .BI "Option \*qNoTrapSignals\*q \*q" boolean \*q
501 This prevents the Xorg server from trapping a range of unexpected fatal
502 signals and exiting cleanly.
503 Instead, the Xorg server will die and drop core where the fault occurred.
504 The default behaviour is for the Xorg server to exit cleanly, but still drop a
506 In general you never want to use this option unless you are debugging an Xorg
507 server problem and know how to deal with the consequences.
509 .BI "Option \*qUseSIGIO\*q \*q" boolean \*q
510 This controls whether the Xorg server requests that events from
511 input devices be reported via a SIGIO signal handler (also known as SIGPOLL
512 on some platforms), or only reported via the standard select(3) loop.
513 The default behaviour is platform specific. In general you do not want to
514 use this option unless you are debugging the Xorg server, or
515 working around a specific bug until it is fixed, and understand the
518 .BI "Option \*qDontVTSwitch\*q \*q" boolean \*q
519 This disallows the use of the
523 refers to one of the numbered function keys).
524 That sequence is normally used to switch to another \*qvirtual terminal\*q
525 on operating systems that have this feature.
526 When this option is enabled, that key sequence has no special meaning and
527 is passed to clients.
530 .BI "Option \*qDontZap\*q \*q" boolean \*q
531 This disallows the use of the
533 XKB action (usually on Ctrl+Alt+Backspace, depending on XKB options).
534 This action is normally used to terminate the Xorg server.
535 When this option is enabled, the action has no effect.
538 .BI "Option \*qDontZoom\*q \*q" boolean \*q
539 This disallows the use of the
540 .B Ctrl+Alt+Keypad\-Plus
542 .B Ctrl+Alt+Keypad\-Minus
544 These sequences allows you to switch between video modes.
545 When this option is enabled, those key sequences have no special meaning
546 and are passed to clients.
549 .BI "Option \*qDisableVidModeExtension\*q \*q" boolean \*q
550 This disables the parts of the VidMode extension used by the xvidtune client
551 that can be used to change the video modes.
552 Default: the VidMode extension is enabled.
554 .BI "Option \*qAllowNonLocalXvidtune\*q \*q" boolean \*q
555 This allows the xvidtune client (and other clients that use the VidMode
556 extension) to connect from another host.
559 .BI "Option \*qAllowMouseOpenFail\*q \*q" boolean \*q
560 This tells the mousedrv(__drivermansuffix__) and vmmouse(__drivermansuffix__)
561 drivers to not report failure if the mouse device can't be opened/initialised.
562 It has no effect on the evdev(__drivermansuffix__) or other drivers.
565 .BI "Option \*qBlankTime\*q \*q" time \*q
566 sets the inactivity timeout for the
568 phase of the screensaver.
571 This is equivalent to the Xorg server's
573 flag, and the value can be changed at run\-time with
574 .BR xset(__appmansuffix__).
577 .BI "Option \*qStandbyTime\*q \*q" time \*q
578 sets the inactivity timeout for the
582 is in minutes, and the value can be changed at run\-time with
583 .BR xset(__appmansuffix__).
585 This is only suitable for VESA DPMS compatible monitors, and may not be
586 supported by all video drivers.
587 It is only enabled for screens that have the
589 option set (see the MONITOR section below).
591 .BI "Option \*qSuspendTime\*q \*q" time \*q
592 sets the inactivity timeout for the
596 is in minutes, and the value can be changed at run\-time with
597 .BR xset(__appmansuffix__).
599 This is only suitable for VESA DPMS compatible monitors, and may not be
600 supported by all video drivers.
601 It is only enabled for screens that have the
603 option set (see the MONITOR section below).
605 .BI "Option \*qOffTime\*q \*q" time \*q
606 sets the inactivity timeout for the
610 is in minutes, and the value can be changed at run\-time with
611 .BR xset(__appmansuffix__).
613 This is only suitable for VESA DPMS compatible monitors, and may not be
614 supported by all video drivers.
615 It is only enabled for screens that have the
617 option set (see the MONITOR section below).
619 .BI "Option \*qPixmap\*q \*q" bpp \*q
620 This sets the pixmap format to use for depth 24.
624 Default: 32 unless driver constraints don't allow this (which is rare).
625 Note: some clients don't behave well when this value is set to 24.
627 .BI "Option \*qNoPM\*q \*q" boolean \*q
628 Disables something to do with power management events.
629 Default: PM enabled on platforms that support it.
631 .BI "Option \*qXinerama\*q \*q" boolean \*q
632 enable or disable XINERAMA extension.
635 .BI "Option \*qAIGLX\*q \*q" boolean \*q
636 enable or disable AIGLX. AIGLX is enabled by default.
638 .BI "Option \*qDRI2\*q \*q" boolean \*q
639 enable or disable DRI2. DRI2 is disabled by default.
641 .BI "Option \*qGlxVisuals\*q \*q" string \*q
642 This option controls how many GLX visuals the GLX modules sets up.
645 which will setup up a typical subset of
646 the GLXFBConfigs provided by the driver as GLX visuals. Other options are
648 which will set up the minimal set allowed by the GLX specification and
650 which will setup GLX visuals for all GLXFBConfigs.
652 .BI "Option \*qUseDefaultFontPath\*q \*q" boolean \*q
653 Include the default font path even if other paths are specified in
654 xorg.conf. If enabled, other font paths are included as well. Enabled by
657 .BI "Option \*qIgnoreABI\*q \*q" boolean \*q
658 Allow modules built for a different, potentially incompatible version of
659 the X server to load. Disabled by default.
661 .BI "Option \*qAutoAddDevices\*q \*q" boolean \*q
662 If this option is disabled, then no devices will be added from the HAL or
663 udev backends. Enabled by default.
665 .BI "Option \*qAutoEnableDevices\*q \*q" boolean \*q
666 If this option is disabled, then the devices will be added (and the
667 DevicePresenceNotify event sent), but not enabled, thus leaving policy up
671 .BI "Option \*qAutoAddGPU\*q \*q" boolean \*q
672 If this option is disabled, then no GPU devices will be added from the udev
673 backend. Enabled by default. (May need to be disabled to setup Xinerama).
675 .BI "Option \*qLog\*q \*q" string \*q
676 This option controls whether the log is flushed and/or synced to disk after
686 section is used to specify which Xorg server modules should be loaded.
687 This section is ignored when the Xorg server is built in static form.
688 The type of modules normally loaded in this section are Xorg server
690 Most other module types are loaded automatically when they are needed via
694 section is optional, as are all of the entries that may be specified in
697 Entries in this section may be in two forms.
698 The first and most commonly used form is an entry that uses the
700 keyword, as described here:
702 .BI "Load \*q" modulename \*q
703 This instructs the server to load the module called
705 The module name given should be the module's standard name, not the
707 The standard name is case\-sensitive, and does not include the \(lqlib\(rq
708 or \(lqcyg\(rq prefixes, or the \(lq.so\(rq or \(lq.dll\(rq suffixes.
711 Example: the DRI extension module can be loaded with the following entry:
718 .BI "Disable \*q" modulename \*q
719 This instructs the server to not load the module called
721 Some modules are loaded by default in the server, and this overrides that
724 instruction is given for the same module, it overrides the
726 instruction and the module is loaded. The module name given should be the
727 module's standard name, not the module file name. As with the
729 instruction, the standard name is case-sensitive, and does not include the
730 "lib" prefix, or the ".a", ".o", or ".so" suffixes.
732 The second form of entry is a
734 with the subsection name being the module name, and the contents of the
738 that are passed to the module when it is loaded.
740 Example: the extmod module (which contains a miscellaneous group of
741 server extensions) can be loaded, with the XFree86\-DGA extension
742 disabled by using the following entry:
746 .B "SubSection \*qextmod\*q"
747 .B " Option \*qomit XFree86\-DGA\*q"
752 Modules are searched for in each directory specified in the
754 search path, and in the drivers, extensions, input, internal, and
755 multimedia subdirectories of each of those directories.
756 In addition to this, operating system specific subdirectories of all
757 the above are searched first if they exist.
759 To see what extension modules are available, check the extensions
768 The \(lqextmod\(rq, \(lqdbe\(rq, \(lqdri\(rq, \(lqdri2\(rq, \(lqglx\(rq,
769 and \(lqrecord\(rq extension modules are loaded automatically, if they
770 are present, unless disabled with \*qDisable\*q entries.
772 that at very least the \(lqextmod\(rq extension module be loaded.
773 If it isn't, some commonly used server extensions (like the SHAPE
774 extension) will not be available.
775 .SH "EXTENSIONS SECTION"
778 section is used to specify which X11 protocol extensions should be enabled
782 section is optional, as are all of the entries that may be specified in
785 Entries in this section are listed as Option statements with the name of
786 the extension as the first argument, and a boolean value as the second.
787 The extension name is case\-sensitive, and matches the form shown in the output
788 of \*qXorg -extension ?\*q.
791 Example: the MIT-SHM extension can be disabled with the following entry:
795 .B "Section \*qExtensions\*q"
796 .B " Option \*qMIT-SHM\*q \*qDisable\*q"
801 .SH "INPUTDEVICE SECTION"
802 The config file may have multiple
805 Recent X servers employ HAL or udev backends for input device enumeration
806 and input hotplugging. It is usually not
809 sections in the xorg.conf if hotplugging is in use (i.e. AutoAddDevices is
810 enabled). If hotplugging is enabled,
816 driver will be ignored.
818 If hotplugging is disabled, there will normally
819 be at least two: one for the core (primary) keyboard
820 and one for the core pointer.
821 If either of these two is missing, a default configuration for the missing
822 ones will be used. In the absence of an explicitly specified core input
830 If there is no match there, the first
832 that uses the \(lqmouse\(rq (or \(lqkbd\(rq) driver is used.
833 The final fallback is to use built\-in default configurations.
834 Currently the default configuration may not work as expected on all platforms.
837 sections have the following format:
841 .B "Section \*qInputDevice\*q"
842 .BI " Identifier \*q" name \*q
843 .BI " Driver \*q" inputdriver \*q
854 entries are required in all
857 All other entries are optional.
861 entry specifies the unique name for this input device.
864 entry specifies the name of the driver to use for this input device.
865 When using the loadable server, the input driver module
866 .RI \*q inputdriver \*q
867 will be loaded for each active
872 section is considered active if it is referenced by an active
874 section, if it is referenced by the
878 command line options, or if it is selected implicitly as the core pointer
879 or keyboard device in the absence of such explicit references.
880 The most commonly used input drivers are
881 .BR evdev (__drivermansuffix__)
882 on Linux systems, and
883 .BR kbd (__drivermansuffix__)
885 .BR mousedrv (__drivermansuffix__)
890 sections recognise some driver\-independent
892 which are described here.
893 See the individual input driver manual pages for a description of the
894 device\-specific options.
896 .BI "Option \*qAutoServerLayout\*q \*q" boolean \*q
897 Always add the device to the ServerLayout section used by this instance of
898 the server. This affects implied layouts as well as explicit layouts
899 specified in the configuration and/or on the command line.
901 .BI "Option \*qCorePointer\*q"
905 .BI "Option \*qCoreKeyboard\*q"
909 .BI "Option \*qAlwaysCore\*q \*q" boolean \*q
913 .BI "Option \*qSendCoreEvents\*q \*q" boolean \*q
918 .BI "Option \*qFloating\*q \*q" boolean \*q
919 When enabled, the input device is set up floating and does not
920 report events through any master device or control a cursor. The device is
921 only available to clients using the X Input Extension API. This option is
929 are the inverse of option
932 .B SendCoreEvents \*qon\*q
934 .B Floating \*qoff\*q
937 This option controls the startup behavior only, a device
938 may be reattached or set floating at runtime.
940 .BI "Option \*qTransformationMatrix\*q \*q" a " " b " " c " " d " " e " " f " " g " " h " " i \*q
941 Specifies the 3x3 transformation matrix for absolute input devices. The
942 input device will be bound to the area given in the matrix. In most
943 configurations, "a" and "e" specify the width and height of the area the
944 device is bound to, and "c" and "f" specify the x and y offset of the area.
945 The value range is 0 to 1, where 1 represents the width or height of all
946 root windows together, 0.5 represents half the area, etc. The values
947 represent a 3x3 matrix, with the first, second and third group of three
948 values representing the first, second and third row of the matrix,
949 respectively. The identity matrix is "1 0 0 0 1 0 0 0 1".
950 .SS POINTER ACCELERATION
951 For pointing devices, the following options control how the pointer
952 is accelerated or decelerated with respect to physical device motion. Most of
953 these can be adjusted at runtime, see the xinput(1) man page for details. Only
954 the most important acceleration options are discussed here.
956 .BI "Option \*qAccelerationProfile\*q \*q" integer \*q
957 Select the profile. In layman's terms, the profile constitutes the "feeling" of
958 the acceleration. More formally, it defines how the transfer function (actual
959 acceleration as a function of current device velocity and acceleration controls)
960 is constructed. This is mainly a matter of personal preference.
964 .B " 0 classic (mostly compatible)"
965 .B "-1 none (only constant deceleration is applied)"
966 .B " 1 device-dependent"
967 .B " 2 polynomial (polynomial function)"
968 .B " 3 smooth linear (soft knee, then linear)"
969 .B " 4 simple (normal when slow, otherwise accelerated)"
970 .B " 5 power (power function)"
971 .B " 6 linear (more speed, more acceleration)"
972 .B " 7 limited (like linear, but maxes out at threshold)"
976 .BI "Option \*qConstantDeceleration\*q \*q" real \*q
979 times slower than normal. Most useful for high-resolution devices. A value
980 between 0 and 1 will speed up the pointer.
982 .BI "Option \*qAdaptiveDeceleration\*q \*q" real \*q
983 Allows to actually decelerate the pointer when going slow. At most, it will be
984 .B adaptive deceleration
985 times slower. Enables precise pointer placement without sacrificing speed.
987 .BI "Option \*qAccelerationScheme\*q \*q" string \*q
988 Selects the scheme, which is the underlying algorithm.
992 .B "predictable default algorithm (behaving more predictable)"
993 .B "lightweight old acceleration code (as specified in the X protocol spec)"
994 .B "none no acceleration or deceleration"
998 .BI "Option \*qAccelerationNumerator\*q \*q" integer \*q
1000 .BI "Option \*qAccelerationDenominator\*q \*q" integer \*q
1001 Set numerator and denominator of the acceleration factor. The acceleration
1002 factor is a rational which, together with threshold, can be used to tweak
1003 profiles to suit the users needs. The
1007 profiles use it directly (i.e. they accelerate by the factor), for other
1008 profiles it should hold that a higher acceleration factor leads to a faster
1009 pointer. Typically, 1 is unaccelerated and values up to 5 are sensible.
1011 .BI "Option \*qAccelerationThreshold\*q \*q" integer \*q
1012 Set the threshold, which is roughly the velocity (usually device units per 10
1013 ms) required for acceleration to become effective. The precise effect varies
1014 with the profile however.
1016 .SH "INPUTCLASS SECTION"
1017 The config file may have multiple
1020 These sections are optional and are used to provide configuration for a
1021 class of input devices as they are automatically added. An input device can
1024 section. Each class can override settings from a previous class, so it is
1025 best to arrange the sections with the most generic matches first.
1028 sections have the following format:
1032 .B "Section \*qInputClass\*q"
1033 .BI " Identifier \*q" name \*q
1044 entry is required in all
1047 All other entries are optional.
1051 entry specifies the unique name for this input class.
1054 entry specifies the name of the driver to use for this input device.
1055 After all classes have been examined, the
1056 .RI \*q inputdriver \*q
1057 module from the first
1059 entry will be enabled when using the loadable server.
1061 When an input device is automatically added, its characteristics are
1064 sections. Each section can contain optional entries to narrow the match
1065 of the class. If none of the optional entries appear, the
1067 section is generic and will match any input device. If more than one of
1068 these entries appear, they all must match for the configuration to apply.
1070 There are two types of match entries used in
1072 sections. The first allows various tokens to be matched against attributes
1073 of the device. An entry can be constructed to match attributes from different
1074 devices by separating arguments with a '|' character. Multiple entries of the
1075 same type may be supplied to add multiple matching conditions on the same
1076 attribute. For example:
1080 .B "Section \*qInputClass\*q"
1081 .B " Identifier \*qMy Class\*q"
1082 .B " # product string must contain example and
1083 .B " # either gizmo or gadget
1084 .B " MatchProduct \*qexample\*q
1085 .B " MatchProduct \*qgizmo|gadget\*q
1091 .BI "MatchProduct \*q" matchproduct \*q
1092 This entry can be used to check if the substring
1093 .RI \*q matchproduct \*q
1094 occurs in the device's product name.
1096 .BI "MatchVendor \*q" matchvendor \*q
1097 This entry can be used to check if the substring
1098 .RI \*q matchvendor \*q
1099 occurs in the device's vendor name.
1101 .BI "MatchDevicePath \*q" matchdevice \*q
1102 This entry can be used to check if the device file matches the
1103 .RI \*q matchdevice \*q
1106 .BI "MatchOS \*q" matchos \*q
1107 This entry can be used to check if the operating system matches the
1110 string. This entry is only supported on platforms providing the
1114 .BI "MatchPnPID \*q" matchpnp \*q
1115 The device's Plug and Play (PnP) ID can be checked against the
1116 .RI \*q matchpnp \*q
1117 shell wildcard pattern.
1119 .BI "MatchUSBID \*q" matchusb \*q
1120 The device's USB ID can be checked against the
1121 .RI \*q matchusb \*q
1122 shell wildcard pattern. The ID is constructed as lowercase hexadecimal numbers
1123 separated by a ':'. This is the same format as the
1127 .BI "MatchDriver \*q" matchdriver \*q
1128 Check the case-sensitive string
1129 .RI \*q matchdriver \*q
1130 against the currently configured driver of the device. Ordering of sections
1131 using this entry is important since it will not match unless the driver has
1132 been set by the config backend or a previous
1136 .BI "MatchTag \*q" matchtag \*q
1137 This entry can be used to check if tags assigned by the config backend
1139 .RI \*q matchtag \*q
1140 pattern. A match is found if at least one of the tags given in
1141 .RI \*q matchtag \*q
1142 matches at least one of the tags assigned by the backend.
1144 .BI "MatchLayout \*q" matchlayout \*q
1145 Check the case-sensitive string
1146 .RI \*q matchlayout \*q
1147 against the currently active
1149 section. The empty string "" matches an implicit layout which appears
1152 sections have been found.
1154 The second type of entry is used to match device types. These entries take a
1155 boolean argument similar to
1159 .BI "MatchIsKeyboard \*q" bool \*q
1161 .BI "MatchIsPointer \*q" bool \*q
1163 .BI "MatchIsJoystick \*q" bool \*q
1165 .BI "MatchIsTablet \*q" bool \*q
1167 .BI "MatchIsTouchpad \*q" bool \*q
1169 .BI "MatchIsTouchscreen \*q" bool \*q
1171 When an input device has been matched to the
1175 entries are applied to the device. One
1179 is recognized. See the
1181 section above for a description of the remaining
1185 .BI "Option \*qIgnore\*q \*q" boolean \*q
1186 This optional entry specifies that the device should be ignored entirely,
1187 and not added to the server. This can be useful when the device is handled
1188 by another program and no X events should be generated.
1189 .SH "DEVICE SECTION"
1190 The config file may have multiple
1193 There must be at least one, for the video card being used.
1196 sections have the following format:
1200 .B "Section \*qDevice\*q"
1201 .BI " Identifier \*q" name \*q
1202 .BI " Driver \*q" driver \*q
1213 entries are required in all
1215 sections. All other entries are optional.
1219 entry specifies the unique name for this graphics device.
1222 entry specifies the name of the driver to use for this graphics device.
1223 When using the loadable server, the driver module
1225 will be loaded for each active
1230 section is considered active if it is referenced by an active
1235 sections recognise some driver\-independent entries and
1237 which are described here.
1238 Not all drivers make use of these
1239 driver\-independent entries, and many of those that do don't require them
1240 to be specified because the information is auto\-detected.
1241 See the individual graphics driver manual pages for further information
1242 about this, and for a description of the device\-specific options.
1243 Note that most of the
1245 listed here (but not the other entries) may be specified in the
1247 section instead of here in the
1251 .BI "BusID \*q" bus\-id \*q
1252 This specifies the bus location of the graphics card.
1257 .BI PCI: bus : device : function
1258 (e.g., \(lqPCI:1:0:0\(rq might be appropriate for an AGP card).
1259 This field is usually optional in single-head configurations when using
1260 the primary graphics card.
1261 In multi-head configurations, or when using a secondary graphics card in a
1262 single-head configuration, this entry is mandatory.
1263 Its main purpose is to make an unambiguous connection between the device
1264 section and the hardware it is representing.
1265 This information can usually be found by running the pciaccess tool
1268 .BI "Screen " number
1269 This option is mandatory for cards where a single PCI entity can drive more
1270 than one display (i.e., multiple CRTCs sharing a single graphics accelerator
1274 section is required for each head, and this
1275 parameter determines which head each of the
1277 sections applies to.
1280 range from 0 to one less than the total number of heads per entity.
1281 Most drivers require that the primary screen (0) be present.
1283 .BI "Chipset \*q" chipset \*q
1284 This usually optional entry specifies the chipset used on the graphics
1286 In most cases this entry is not required because the drivers will probe the
1287 hardware to determine the chipset type.
1288 Don't specify it unless the driver-specific documentation recommends that you
1291 .BI "Ramdac \*q" ramdac\-type \*q
1292 This optional entry specifies the type of RAMDAC used on the graphics
1294 This is only used by a few of the drivers, and in most cases it is not
1295 required because the drivers will probe the hardware to determine the
1296 RAMDAC type where possible.
1297 Don't specify it unless the driver-specific documentation recommends that you
1300 .BI "DacSpeed " speed
1302 .BI "DacSpeed " "speed\-8 speed\-16 speed\-24 speed\-32"
1303 This optional entry specifies the RAMDAC speed rating (which is usually
1304 printed on the RAMDAC chip).
1305 The speed is in MHz.
1306 When one value is given, it applies to all framebuffer pixel sizes.
1307 When multiple values are given, they apply to the framebuffer pixel sizes
1308 8, 16, 24 and 32 respectively.
1309 This is not used by many drivers, and only needs to be specified when the
1310 speed rating of the RAMDAC is different from the defaults built in to
1311 driver, or when the driver can't auto-detect the correct defaults.
1312 Don't specify it unless the driver-specific documentation recommends that you
1315 .BI "Clocks " "clock ..."
1316 specifies the pixel that are on your graphics board.
1317 The clocks are in MHz, and may be specified as a floating point number.
1318 The value is stored internally to the nearest kHz.
1319 The ordering of the clocks is important.
1320 It must match the order in which they are selected on the graphics board.
1323 lines may be specified, and each is concatenated to form the list.
1324 Most drivers do not use this entry, and it is only required for some older
1325 boards with non-programmable clocks.
1326 Don't specify this entry unless the driver-specific documentation explicitly
1327 recommends that you do.
1329 .BI "ClockChip \*q" clockchip\-type \*q
1330 This optional entry is used to specify the clock chip type on graphics
1331 boards which have a programmable clock generator.
1332 Only a few Xorg drivers support programmable clock chips.
1333 For details, see the appropriate driver manual page.
1335 .BI "VideoRam " "mem"
1336 This optional entry specifies the amount of video ram that is installed
1337 on the graphics board.
1338 This is measured in kBytes.
1339 In most cases this is not required because the Xorg server probes
1340 the graphics board to determine this quantity.
1341 The driver-specific documentation should indicate when it might be needed.
1343 .BI "BiosBase " "baseaddress"
1344 This optional entry specifies the base address of the video BIOS for
1346 This address is normally auto-detected, and should only be specified if the
1347 driver-specific documentation recommends it.
1349 .BI "MemBase " "baseaddress"
1350 This optional entry specifies the memory base address of a graphics
1351 board's linear frame buffer.
1352 This entry is not used by many drivers, and it should only be specified if
1353 the driver-specific documentation recommends it.
1355 .BI "IOBase " "baseaddress"
1356 This optional entry specifies the IO base address.
1357 This entry is not used by many drivers, and it should only be specified if
1358 the driver-specific documentation recommends it.
1361 This optional entry specifies a numerical ID representing the chip type.
1362 For PCI cards, it is usually the device ID.
1363 This can be used to override the auto-detection, but that should only be done
1364 when the driver-specific documentation recommends it.
1366 .BI "ChipRev " "rev"
1367 This optional entry specifies the chip revision number.
1368 This can be used to override the auto-detection, but that should only be done
1369 when the driver-specific documentation recommends it.
1371 .BI "TextClockFreq " "freq"
1372 This optional entry specifies the pixel clock frequency that is used
1373 for the regular text mode.
1374 The frequency is specified in MHz.
1375 This is rarely used.
1377 .BI "Option \*qModeDebug\*q \*q" boolean \*q
1378 Enable printing of additional debugging information about modesetting to
1382 This optional entry allows an IRQ number to be specified.
1386 Option flags may be specified in the
1389 These include driver\-specific options and driver\-independent options.
1390 The former are described in the driver\-specific documentation.
1391 Some of the latter are described below in the section about the
1393 section, and they may also be included here.
1395 .SH "VIDEOADAPTOR SECTION"
1396 Nobody wants to say how this works.
1397 Maybe nobody knows ...
1399 .SH "MONITOR SECTION"
1400 The config file may have multiple
1403 There should normally be at least one, for the monitor being used,
1404 but a default configuration will be created when one isn't specified.
1407 sections have the following format:
1411 .B "Section \*qMonitor\*q"
1412 .BI " Identifier \*q" name \*q
1419 The only mandatory entry in a
1427 entry specifies the unique name for this monitor.
1430 section may be used to provide information about the specifications of the
1431 monitor, monitor-specific
1433 and information about the video modes to use with the monitor.
1435 With RandR 1.2-enabled drivers, monitor sections may be tied to specific
1436 outputs of the video card. Using the name of the output defined by the video
1437 driver plus the identifier of a monitor section, one associates a monitor
1438 section with an output by adding an option to the Device section in the
1441 .BI "Option \*qMonitor-" outputname "\*q \*q" monitorsection \*q
1444 .B Option \*qMonitor-VGA\*q \*qVGA monitor\*q
1447 In the absence of specific association of monitor sections to outputs, if a
1448 monitor section is present the server will associate it with an output to
1449 preserve compatibility for previous single-head configurations.
1451 Specifying video modes is optional because the server will use the DDC or other
1452 information provided by the monitor to automatically configure the list of
1454 When modes are specified explicitly in the
1461 keywords), built-in modes with the same names are not included.
1462 Built-in modes with different names are, however, still implicitly included,
1463 when they meet the requirements of the monitor.
1465 The entries that may be used in
1467 sections are described below.
1469 .BI "VendorName \*q" vendor \*q
1470 This optional entry specifies the monitor's manufacturer.
1472 .BI "ModelName \*q" model \*q
1473 This optional entry specifies the monitor's model.
1475 .BI "HorizSync " "horizsync\-range"
1476 gives the range(s) of horizontal sync frequencies supported by the
1479 may be a comma separated list of either discrete values or ranges of
1481 A range of values is two values separated by a dash.
1482 By default the values are in units of kHz.
1483 They may be specified in MHz or Hz
1488 is added to the end of the line.
1489 The data given here is used by the Xorg server to determine if video
1490 modes are within the specifications of the monitor.
1491 This information should be available in the monitor's handbook.
1492 If this entry is omitted, a default range of 28\-33kHz is used.
1494 .BI "VertRefresh " "vertrefresh\-range"
1495 gives the range(s) of vertical refresh frequencies supported by the
1497 .I vertrefresh\-range
1498 may be a comma separated list of either discrete values or ranges of
1500 A range of values is two values separated by a dash.
1501 By default the values are in units of Hz.
1502 They may be specified in MHz or kHz
1507 is added to the end of the line.
1508 The data given here is used by the Xorg server to determine if video
1509 modes are within the specifications of the monitor.
1510 This information should be available in the monitor's handbook.
1511 If this entry is omitted, a default range of 43\-72Hz is used.
1513 .BI "DisplaySize " "width height"
1514 This optional entry gives the width and height, in millimetres, of the
1515 picture area of the monitor.
1516 If given this is used to calculate the horizontal and vertical pitch (DPI) of
1519 .BI "Gamma " "gamma\-value"
1521 .BI "Gamma " "red\-gamma green\-gamma blue\-gamma"
1522 This is an optional entry that can be used to specify the gamma correction
1524 It may be specified as either a single value or as three separate RGB values.
1525 The values should be in the range 0.1 to 10.0, and the default is 1.0.
1526 Not all drivers are capable of using this information.
1528 .BI "UseModes \*q" modesection\-id \*q
1529 Include the set of modes listed in the
1532 .IR modesection\-id.
1533 This makes all of the modes defined in that section available for use by
1536 .BI "Mode \*q" name \*q
1537 This is an optional multi-line entry that can be used to provide
1538 definitions for video modes for the monitor.
1539 In most cases this isn't necessary because the built-in set of VESA standard
1540 modes will be sufficient.
1543 keyword indicates the start of a multi-line video mode description.
1544 The mode description is terminated with the
1547 The mode description consists of the following entries:
1550 .BI "DotClock " clock
1551 is the dot (pixel) clock rate to be used for the mode.
1553 .BI "HTimings " "hdisp hsyncstart hsyncend htotal"
1554 specifies the horizontal timings for the mode.
1556 .BI "VTimings " "vdisp vsyncstart vsyncend vtotal"
1557 specifies the vertical timings for the mode.
1559 .BI "Flags \*q" flag \*q " ..."
1560 specifies an optional set of mode flags, each of which is a separate
1561 string in double quotes.
1563 indicates that the mode is interlaced.
1565 indicates a mode where each scanline is doubled.
1569 can be used to select the polarity of the HSync signal.
1573 can be used to select the polarity of the VSync signal.
1575 can be used to specify composite sync on hardware where this is supported.
1576 Additionally, on some hardware,
1580 may be used to select the composite sync polarity.
1583 specifies the number of pixels (towards the right edge of the screen) by
1584 which the display enable signal is to be skewed.
1585 Not all drivers use this information.
1586 This option might become necessary to override the default value supplied
1587 by the server (if any).
1588 \(lqRoving\(rq horizontal lines indicate this value needs to be increased.
1589 If the last few pixels on a scan line appear on the left of the screen,
1590 this value should be decreased.
1593 specifies the number of times each scanline is painted on the screen.
1594 Not all drivers use this information.
1595 Values less than 1 are treated as 1, which is the default.
1599 mentioned above doubles this value.
1602 .BI "ModeLine \*q" name \*q " mode\-description"
1603 This entry is a more compact version of the
1605 entry, and it also can be used to specify video modes for the monitor.
1606 This is a single line format for specifying video modes.
1607 In most cases this isn't necessary because the built\-in set of VESA
1608 standard modes will be sufficient.
1612 .I mode\-description
1613 is in four sections, the first three of which are mandatory.
1614 The first is the dot (pixel) clock.
1615 This is a single number specifying the pixel clock rate for the mode in
1617 The second section is a list of four numbers specifying the horizontal
1619 These numbers are the
1626 The third section is a list of four numbers specifying the vertical
1628 These numbers are the
1635 The final section is a list of flags specifying other characteristics of
1638 indicates that the mode is interlaced.
1640 indicates a mode where each scanline is doubled.
1644 can be used to select the polarity of the HSync signal.
1648 can be used to select the polarity of the VSync signal.
1650 can be used to specify composite sync on hardware where this is supported.
1651 Additionally, on some hardware,
1655 may be used to select the composite sync polarity.
1660 options mentioned above in the
1662 entry description can also be used here.
1665 .BI "Option \*qDPMS\*q \*q" bool \*q
1666 This option controls whether the server should enable the DPMS extension
1667 for power management for this screen. The default is to enable the
1670 .BI "Option \*qSyncOnGreen\*q \*q" bool \*q
1671 This option controls whether the video card should drive the sync signal
1672 on the green color pin. Not all cards support this option, and most
1673 monitors do not require it. The default is off.
1675 .BI "Option \*qPrimary\*q \*q" bool \*q
1676 This optional entry specifies that the monitor should be treated as the primary
1677 monitor. (RandR 1.2-supporting drivers only)
1679 .BI "Option \*qPreferredMode\*q \*q" name \*q
1680 This optional entry specifies a mode to be marked as the preferred initial mode
1682 (RandR 1.2-supporting drivers only)
1684 .BI "Option \*qZoomModes\*q \*q" name " " name " " ... \*q
1685 This optional entry specifies modes to be marked as zoom modes.
1686 It is possible to switch to the next and previous mode via
1687 .BR Ctrl+Alt+Keypad\-Plus " and " Ctrl+Alt+Keypad\-Minus .
1688 All these keypad available modes are selected from the screen mode list.
1689 This list is a copy of the compatibility output monitor mode list.
1690 Since this output is the output connected to the lowest
1691 dot-area monitor, as determined from its largest size mode, that
1692 monitor defines the available zoom modes.
1693 (RandR 1.2-supporting drivers only)
1695 .BI "Option \*qPosition\*q \*q" x " " y \*q
1696 This optional entry specifies the position of the monitor within the X
1698 (RandR 1.2-supporting drivers only)
1700 .BI "Option \*qLeftOf\*q \*q" output \*q
1701 This optional entry specifies that the monitor should be positioned to the
1702 left of the output (not monitor) of the given name.
1703 (RandR 1.2-supporting drivers only)
1705 .BI "Option \*qRightOf\*q \*q" output \*q
1706 This optional entry specifies that the monitor should be positioned to the
1707 right of the output (not monitor) of the given name.
1708 (RandR 1.2-supporting drivers only)
1710 .BI "Option \*qAbove\*q \*q" output \*q
1711 This optional entry specifies that the monitor should be positioned above the
1712 output (not monitor) of the given name.
1713 (RandR 1.2-supporting drivers only)
1715 .BI "Option \*qBelow\*q \*q" output \*q
1716 This optional entry specifies that the monitor should be positioned below the
1717 output (not monitor) of the given name.
1718 (RandR 1.2-supporting drivers only)
1720 .BI "Option \*qEnable\*q \*q" bool \*q
1721 This optional entry specifies whether the monitor should be turned on
1722 at startup. By default, the server will attempt to enable all connected
1724 (RandR 1.2-supporting drivers only)
1726 .BI "Option \*qDefaultModes\*q \*q" bool \*q
1727 This optional entry specifies whether the server should add supported default
1728 modes to the list of modes offered on this monitor. By default, the server
1729 will add default modes; you should only disable this if you can guarantee
1730 that EDID will be available at all times, or if you have added custom modelines
1731 which the server can use.
1732 (RandR 1.2-supporting drivers only)
1734 .BI "Option \*qMinClock\*q \*q" frequency \*q
1735 This optional entry specifies the minimum dot clock, in kHz, that is supported
1738 .BI "Option \*qMaxClock\*q \*q" frequency \*q
1739 This optional entry specifies the maximum dot clock, in kHz, that is supported
1742 .BI "Option \*qIgnore\*q \*q" bool \*q
1743 This optional entry specifies that the monitor should be ignored entirely,
1744 and not reported through RandR. This is useful if the hardware reports the
1745 presence of outputs that don't exist.
1746 (RandR 1.2-supporting drivers only)
1748 .BI "Option \*qRotate\*q \*q" rotation \*q
1749 This optional entry specifies the initial rotation of the given monitor.
1750 Valid values for rotation are \*qnormal\*q, \*qleft\*q, \*qright\*q, and
1752 (RandR 1.2-supporting drivers only)
1755 The config file may have multiple
1758 These sections provide a way of defining sets of video modes independently
1763 sections may include the definitions provided in these sections by
1769 sections are not necessary because the built\-in set of VESA standard modes
1773 sections have the following format:
1777 .B "Section \*qModes\*q"
1778 .BI " Identifier \*q" name \*q
1787 entry specifies the unique name for this set of mode descriptions.
1788 The other entries permitted in
1794 entries that are described above in the
1797 .SH "SCREEN SECTION"
1798 The config file may have multiple
1801 There must be at least one, for the \(lqscreen\(rq being used.
1802 A \(lqscreen\(rq represents the binding of a graphics device
1804 section) and a monitor
1809 section is considered \(lqactive\(rq if it is referenced by an active
1813 command line option.
1814 If neither of those is present, the first
1816 section found in the config file is considered the active one.
1819 sections have the following format:
1823 .B "Section \*qScreen\*q"
1824 .BI " Identifier \*q" name \*q
1825 .BI " Device \*q" devid \*q
1826 .BI " Monitor \*q" monid \*q
1829 .BI " SubSection \*qDisplay\*q"
1841 All others are optional.
1845 entry specifies the unique name for this screen.
1848 section provides information specific to the whole screen, including
1851 In multi\-head configurations, there will be multiple active
1853 sections, one for each head.
1854 The entries available
1855 for this section are:
1857 .BI "Device \*q" device\-id \*q
1858 This entry specifies the
1860 section to be used for this screen. When multiple graphics cards are
1861 present, this is what ties a specific card to a screen. The
1867 section in the config file.
1869 .BI "Monitor \*q" monitor\-id \*q
1870 specifies which monitor description is to be used for this screen.
1873 name is not specified, a default configuration is used.
1874 Currently the default configuration may not function as expected on all
1877 .BI "VideoAdaptor \*q" xv\-id \*q
1878 specifies an optional Xv video adaptor description to be used with this
1881 .BI "DefaultDepth " depth
1882 specifies which color depth the server should use by default.
1885 command line option can be used to override this.
1886 If neither is specified, the default depth is driver\-specific, but in most
1889 .BI "DefaultFbBpp " bpp
1890 specifies which framebuffer layout to use by default.
1893 command line option can be used to override this.
1894 In most cases the driver will chose the best default value for this.
1895 The only case where there is even a choice in this value is for depth 24,
1896 where some hardware supports both a packed 24 bit framebuffer layout and a
1897 sparse 32 bit framebuffer layout.
1902 flags may be specified in the
1905 Some are driver\-specific and are described in the driver documentation.
1906 Others are driver\-independent, and will eventually be described here.
1907 .\" XXX These should really be in an xaa man page.
1909 .BI "Option \*qAccel\*q"
1910 Enables 2D hardware acceleration.
1911 This option is on by default, but it may be necessary to turn it off if
1912 there are bugs in the driver.
1913 There are many options to disable specific accelerated operations, listed
1915 Note that disabling an operation will have no effect if the operation is
1916 not accelerated (whether due to lack of support in the hardware or in the
1919 .BI "Option \*qInitPrimary\*q \*q" boolean \*q
1920 Use the Int10 module to initialize the primary graphics card.
1921 Normally, only secondary cards are soft-booted using the Int10 module, as the
1922 primary card has already been initialized by the BIOS at boot time.
1925 .BI "Option \*qNoInt10\*q \*q" boolean \*q
1926 Disables the Int10 module, a module that uses the int10 call to the BIOS
1927 of the graphics card to initialize it.
1930 .BI "Option \*qNoMTRR\*q"
1931 Disables MTRR (Memory Type Range Register) support, a feature of modern
1932 processors which can improve video performance by a factor of up to 2.5.
1933 Some hardware has buggy MTRR support, and some video drivers have been
1934 known to exhibit problems when MTRR's are used.
1938 section may optionally contain one or more
1941 Those subsections provide depth/fbbpp specific configuration information,
1942 and the one chosen depends on the depth and/or fbbpp that is being used for
1946 subsection format is described in the section below.
1948 .SH "DISPLAY SUBSECTION"
1951 section may have multiple
1956 subsection is the first that matches the depth and/or fbbpp values being
1957 used, or failing that, the first that has neither a depth or fbbpp value
1961 subsections are optional.
1962 When there isn't one that matches the depth and/or fbbpp values being used,
1963 all the parameters that can be specified here fall back to their defaults.
1966 subsections have the following format:
1970 .B " SubSection \*qDisplay\*q"
1979 This entry specifies what colour depth the
1981 subsection is to be used for.
1982 This entry is usually specified, but it may be omitted to create a match\-all
1984 subsection or when wishing to match only against the
1989 values that are allowed depends on the driver.
1990 Most drivers support 8, 15, 16 and 24.
1991 Some also support 1 and/or 4, and some may support other values (like 30).
1994 means the number of bits in a pixel that are actually used to determine
1999 Most hardware that uses 32 bits per pixel only uses 24 of them to hold the
2000 colour information, which means that the colour depth is 24, not 32.
2003 This entry specifies the framebuffer format this
2005 subsection is to be used for.
2006 This entry is only needed when providing depth 24 configurations that allow
2007 a choice between a 24 bpp packed framebuffer format and a 32bpp sparse
2009 In most cases this entry should not be used.
2011 .BI "Weight " "red\-weight green\-weight blue\-weight"
2012 This optional entry specifies the relative RGB weighting to be used
2013 for a screen is being used at depth 16 for drivers that allow multiple
2015 This may also be specified from the command line with the
2018 .BR Xorg(__appmansuffix__)).
2020 .BI "Virtual " "xdim ydim"
2021 This optional entry specifies the virtual screen resolution to be used.
2023 must be a multiple of either 8 or 16 for most drivers, and a multiple
2024 of 32 when running in monochrome mode.
2025 The given value will be rounded down if this is not the case.
2026 Video modes which are too large for the specified virtual size will be
2028 If this entry is not present, the virtual screen resolution will be set to
2029 accommodate all the valid video modes given in the
2032 Some drivers/hardware combinations do not support virtual screens.
2033 Refer to the appropriate driver\-specific documentation for details.
2035 .BI "ViewPort " "x0 y0"
2036 This optional entry sets the upper left corner of the initial display.
2037 This is only relevant when the virtual screen resolution is different
2038 from the resolution of the initial video mode.
2039 If this entry is not given, then the initial display will be centered in
2040 the virtual display area.
2042 .BI "Modes \*q" mode\-name \*q " ..."
2043 This optional entry specifies the list of video modes to use.
2046 specified must be in double quotes.
2047 They must correspond to those specified or referenced in the appropriate
2049 section (including implicitly referenced built\-in VESA standard modes).
2050 The server will delete modes from this list which don't satisfy various
2052 The first valid mode in this list will be the default display mode for
2054 The list of valid modes is converted internally into a circular list.
2055 It is possible to switch to the next mode with
2056 .B Ctrl+Alt+Keypad\-Plus
2057 and to the previous mode with
2058 .BR Ctrl+Alt+Keypad\-Minus .
2059 When this entry is omitted, the valid modes referenced by the appropriate
2061 section will be used. If the
2063 section contains no modes, then the selection will be taken from the
2064 built-in VESA standard modes.
2066 .BI "Visual \*q" visual\-name \*q
2067 This optional entry sets the default root visual type.
2068 This may also be specified from the command line (see the
2069 .BR Xserver(__appmansuffix__)
2071 The visual types available for depth 8 are (default is
2086 The visual type available for the depths 15, 16 and 24 are (default is
2096 Not all drivers support
2100 The visual types available for the depth 4 are (default is
2112 The visual type available for the depth 1 (monochrome) is
2116 .BI "Black " "red green blue"
2117 This optional entry allows the \(lqblack\(rq colour to be specified.
2118 This is only supported at depth 1.
2119 The default is black.
2121 .BI "White " "red green blue"
2122 This optional entry allows the \(lqwhite\(rq colour to be specified.
2123 This is only supported at depth 1.
2124 The default is white.
2127 Option flags may be specified in the
2130 These may include driver\-specific options and driver\-independent options.
2131 The former are described in the driver\-specific documentation.
2132 Some of the latter are described above in the section about the
2134 section, and they may also be included here.
2135 .SH "SERVERLAYOUT SECTION"
2136 The config file may have multiple
2139 A \(lqserver layout\(rq represents the binding of one or more screens
2141 sections) and one or more input devices
2143 sections) to form a complete configuration.
2144 In multi\-head configurations, it also specifies the relative layout of the
2148 section is considered \(lqactive\(rq if it is referenced by the
2150 command line option or by an
2151 .B "Option \*qDefaultServerLayout\*q"
2154 section (the former takes precedence over the latter).
2155 If those options are not used, the first
2157 section found in the config file is considered the active one.
2160 sections are present, the single active screen and two active (core)
2161 input devices are selected as described in the relevant sections above.
2164 sections have the following format:
2168 .B "Section \*qServerLayout\*q"
2169 .BI " Identifier \*q" name \*q
2170 .BI " Screen \*q" screen\-id \*q
2172 .BI " InputDevice \*q" idev\-id \*q
2182 section must have an
2184 entry and at least one
2190 entry specifies the unique name for this server layout.
2193 section provides information specific to the whole session, including
2198 options (described above) may be specified here, and ones given here
2199 override those given in the
2203 The entries that may be used in this section are described here.
2205 .BI "Screen " "screen\-num" " \*qscreen\-id\*q " "position\-information"
2206 One of these entries must be given for each screen being used in
2210 field is mandatory, and specifies the
2212 section being referenced.
2215 field is optional, and may be used to specify the screen number
2216 in multi\-head configurations.
2217 When this field is omitted, the screens will be numbered in the order that
2219 The numbering starts from 0, and must be consecutive.
2221 .I position\-information
2222 field describes the way multiple screens are positioned.
2223 There are a number of different ways that this information can be provided:
2228 .BI "Absolute " "x y"
2229 These both specify that the upper left corner's coordinates are
2233 keyword is optional.
2234 Some older versions of XFree86 (4.2 and earlier) don't recognise the
2236 keyword, so it's safest to just specify the coordinates without it.
2238 .BI "RightOf \*q" screen\-id \*q
2240 .BI "LeftOf \*q" screen\-id \*q
2242 .BI "Above \*q" screen\-id \*q
2244 .BI "Below \*q" screen\-id \*q
2246 .BI "Relative \*q" screen\-id \*q " x y"
2247 These give the screen's location relative to another screen.
2248 The first four position the screen immediately to the right, left, above or
2249 below the other screen.
2250 When positioning to the right or left, the top edges are aligned.
2251 When positioning above or below, the left edges are aligned.
2254 form specifies the offset of the screen's origin (upper left corner)
2255 relative to the origin of another screen.
2258 .BI "InputDevice \*q" idev\-id "\*q \*q" option \*q " ..."
2259 One of these entries should be given for each input device being used in
2261 Normally at least two are required, one each for the core pointer and
2263 If either of those is missing, suitable
2265 entries are searched for using the method described above in the
2269 field is mandatory, and specifies the name of the
2271 section being referenced.
2274 fields may be specified, each in double quotes.
2275 The options permitted here are any that may also be given in the
2278 Normally only session\-specific input device options would be used here.
2279 The most commonly used options are:
2283 .B \*qCorePointer\*q
2284 .B \*qCoreKeyboard\*q
2285 .B \*qSendCoreEvents\*q
2290 and the first two should normally be used to indicate the core pointer
2291 and core keyboard devices respectively.
2295 In addition to the following, any option permitted in the
2297 section may also be specified here.
2298 When the same option appears in both places, the value given here overrides
2299 the one given in the
2303 .BI "Option \*qIsolateDevice\*q \*q" bus\-id \*q
2304 Restrict device resets to the specified
2308 option (described in
2309 .BR "DEVICE SECTION" ,
2310 above) for the format of the
2313 This option overrides
2316 At present, only PCI devices can be isolated in this manner.
2318 .BI "Option \*qSingleCard\*q \*q" boolean \*q
2321 except that the bus ID of the first device in the layout is used.
2323 Here is an example of a
2325 section for a dual headed configuration with two mice:
2329 .B "Section \*qServerLayout\*q"
2330 .B " Identifier \*qLayout 1\*q"
2331 .B " Screen \*qMGA 1\*q"
2332 .B " Screen \*qMGA 2\*q RightOf \*qMGA 1\*q"
2333 .B " InputDevice \*qKeyboard 1\*q \*qCoreKeyboard\*q"
2334 .B " InputDevice \*qMouse 1\*q \*qCorePointer\*q"
2335 .B " InputDevice \*qMouse 2\*q \*qSendCoreEvents\*q"
2336 .B " Option \*qBlankTime\*q \*q5\*q"
2341 This optional section is used to provide some information for the
2342 Direct Rendering Infrastructure.
2343 Details about the format of this section can be found on-line at
2344 .IR <http://dri.freedesktop.org/> .
2345 .SH "VENDOR SECTION"
2348 section may be used to provide vendor\-specific configuration information.
2351 sections may be present, and they may contain an
2356 The data therein is not used in this release.
2360 .BR X (__miscmansuffix__),
2361 .BR Xserver (__appmansuffix__),
2362 .BR Xorg (__appmansuffix__),
2363 .BR cvt (__appmansuffix__),
2364 .BR gtf (__appmansuffix__).
2366 .B "Not all modules or interfaces are available on all platforms."
2369 .BR apm (__drivermansuffix__),
2370 .BR ati (__drivermansuffix__),
2371 .BR chips (__drivermansuffix__),
2372 .BR cirrus (__drivermansuffix__),
2373 .BR cyrix (__drivermansuffix__),
2374 .BR fbdev (__drivermansuffix__),
2375 .BR glide (__drivermansuffix__),
2376 .BR glint (__drivermansuffix__),
2377 .BR i128 (__drivermansuffix__),
2378 .BR i740 (__drivermansuffix__),
2379 .BR imstt (__drivermansuffix__),
2380 .BR intel (__drivermansuffix__),
2381 .BR mga (__drivermansuffix__),
2382 .BR neomagic (__drivermansuffix__),
2383 .BR nv (__drivermansuffix__),
2384 .BR openchrome (__drivermansuffix__),
2385 .BR r128 (__drivermansuffix__),
2386 .BR radeon (__drivermansuffix__),
2387 .BR rendition (__drivermansuffix__),
2388 .BR savage (__drivermansuffix__),
2389 .BR s3virge (__drivermansuffix__),
2390 .BR siliconmotion (__drivermansuffix__),
2391 .BR sis (__drivermansuffix__),
2392 .BR sisusb (__drivermansuffix__),
2393 .BR sunbw2 (__drivermansuffix__),
2394 .BR suncg14 (__drivermansuffix__),
2395 .BR suncg3 (__drivermansuffix__),
2396 .BR suncg6 (__drivermansuffix__),
2397 .BR sunffb (__drivermansuffix__),
2398 .BR sunleo (__drivermansuffix__),
2399 .BR suntcx (__drivermansuffix__),
2400 .BR tdfx (__drivermansuffix__),
2401 .\" .BR tga (__drivermansuffix__),
2402 .BR trident (__drivermansuffix__),
2403 .BR tseng (__drivermansuffix__),
2404 .BR vesa (__drivermansuffix__),
2405 .BR vmware (__drivermansuffix__),
2406 .BR voodoo (__drivermansuffix__),
2407 .BR wsfb (__drivermansuffix__),
2408 .BR xgi (__drivermansuffix__),
2409 .BR xgixp (__drivermansuffix__).
2412 .BR acecad (__drivermansuffix__),
2413 .BR citron (__drivermansuffix__),
2414 .BR elographics (__drivermansuffix__),
2415 .BR evdev (__drivermansuffix__),
2416 .BR fpit (__drivermansuffix__),
2417 .BR joystick (__drivermansuffix__),
2418 .BR kbd (__drivermansuffix__),
2419 .BR mousedrv (__drivermansuffix__),
2420 .BR mutouch (__drivermansuffix__),
2421 .BR penmount (__drivermansuffix__),
2422 .BR synaptics (__drivermansuffix__),
2423 .BR vmmouse (__drivermansuffix__),
2424 .BR void (__drivermansuffix__),
2425 .BR wacom (__drivermansuffix__).
2427 Other modules and interfaces:
2428 .BR exa (__drivermansuffix__),
2429 .BR fbdevhw (__drivermansuffix__),
2430 .\" .BR shadowfb (__drivermansuffix__),
2431 .BR v4l (__drivermansuffix__).
2434 This manual page was largely rewritten by David Dawes
2435 .IR <dawes@xfree86.org> .