XF86_SVGA(1) manual page

Table of Contents


XF86_SVGA - non-accelerated SVGA X Window System servers for UNIX on x86 platforms


XF86_SVGA [:displaynumber] [ option ] ...


XF86_SVGA is an 8-bit PseudoColor, 16-bit TrueColor and 24-bit TrueColor server for Super-VGA cards. It is derived from the X386 server provided with X11R5. Note: 16-bit TrueColor is currently only supported for some Cirrus and ARK chips, and 24-bit TrueColor is only supported for some Cirrus chips.


The XF86_SVGA server supports the following popular SuperVGA chipsets in 256 color mode. Virtual resolutions up to (approximately) 1152x900 are supported, using (up to) 1Mb of display memory. The Western Digital WD90C33 and some of the Cirrus chipsets support up to 2Mb of display memory and virtual resolutions of 1280x1024 and higher. Some of the Cirrus chipsets also support 16bpp and 32bpp (truecolor) modes on certain configurations. Some of the ARK chipsets support 16bpp modes on certain configurations. Generic VGA cards are also supported at 8bpp 320x200 only.

18800, 18800-1, 28800-2, 28800-4, 28800-5, 28800-6, 68800-3, 68800-6, 68800AX, 68800LX, 88800CX, 88800GX

ET3000, ET4000, ET4000/W32

Western Digital:
PVGA1, WD90C00, WD90C10, WD90C11, WD90C24A, WD90C30, WD90C31, WD90C33


TVGA8800CS, TVGA8900B, TVGA8900C, TVGA8900CL, TVGA9000

77C22, 77C22E

Cirrus Logic:
CLGD5420, CLGD5422, CLGD5424, CLGD5426, CLGD5428, CLGD5429, CLGD5430, CLGD5434, CLGD5436, CLGD6205, CLGD6215, CLGD6225, CLGD6235, CL6410, CL6412, CL6420, CL6440

ARK1000PV, ARK1000VL, ARK2000PV



OTI067, OTI077, OTI087

Avance Logic:
AL2101, ALI2301, ALI2302, ALI2308, ALI2401

Chips & Technology:
65520, 65530, 65540, 65545

MX68000, MX68010


Accelerated support is included for most of the Cirrus chipsets, and for the Western Digital WD90C31 and WD90C33 chipsets. Accelerated support for the ET4000/W32 is implemented in a separate server (see XF86_W32(1)). Users of boards based on ATI's Mach8, Mach32 and Mach64 chipsets should refer to the XF86_Mach8(1), XF86_Mach32(1) and XF86_Mach64(1) manual pages, respectively.


In addition to the normal server options described in the Xserver(1) manual page, XF86_SVGA accepts some more command line switches, as described in the XFree86(1) manpage.


XFree86 uses a configuration file called XF86Config for its initial setup. See the XF86Config(4/5) manpage for general details. Here only the XF86_SVGA specific parts are explained.

This server requires a Screen section in the XF86Config file with the Driver entry set to svga.

Entries for the Device section in the XF86Config file include: chipset "name"
specifies a chipset so the correct driver can be used. Possible chipsets are:


et3000, et4000, et4000w32, et4000w32i, et4000w32p

Western Digital:
pvga1, wd90c00, wd90c10, wd90c24, wd90c30, wd90c31, wd90c33


tvga8800cs, tvga8900b, tvga8900c, tvga8900cl, tvga9000

ncr77c22, ncr77c22e

Cirrus Logic:
clgd5420, clgd5422, clgd5424, clgd5426, clgd5428, clgd5429, clgd5430, clgd5434, clgd5436, clgd6205, clgd6215, clgd6225, clgd6235, cl6410, cl6412, cl6420, cl6440


ark1000pv, ark1000vl, ark2000pv


oti067, oti077, oti087

Avance Logic:
al2101, ali2301, ali2302, ali2308, ali2401

Chips & Technology:
ct65520, ct65530, ct65540, ct65545




Option "optionstring"
allows the user to select certain options provided by the drivers. Currently the following strings are recognized:

legend - for Sigma Legend ET4000-based boards. This option enables a special clock-selection algorithm used on Legend boards, and MUST be specified for these boards to function correctly.

swap_hibit - for Western Digital/PVGA1 chipsets. Some Western Digital based boards require the high-order clock-select lead to be inverted. It is not possible for the server to determine this information at run-time. If the 9th clock in the list of clocks detected by the server is less than 30Mhz, this option likely needs to be set.

hibit_low, hibit_high - for Tseng ET4000 chipsets. With some ET4000 cards, the server has difficulty getting the state of the high-order clocks select bit right when started from a high-resolution text mode. These options allow the correct initial state of that bit to be specified. To find out what the correct initial state is, start the server from an 80x25 text mode. This option is only needed if the clocks reported by the server when started from a high-resolution text mode differ from those reported when it is started from an 80x25 text mode.

8clocks - for the PVGA1 chipset the default is 4 clocks. Some cards with this chipset may support 8 clocks. Specifying this option will allow the driver to detect and use the extra clocks.

16clocks - for Trident TVGA8900B and 8900C chipsets. Some newer boards using 8900B and 8900C chipsets actually support 16 clocks rather than the standard 8 clocks. Such boards will have a "TCK9002" or "TCK9004" chip on them. Specifying this option will allow the driver to detect and use the extra 8 clocks.

probe_clocks - for Cirrus chipsets. The Cirrus driver has a fixed set of clocks that are normally used. Specifying this option will force the driver to probe for clocks instead of reporting the built-in defaults. This option is for debugging purposes only.

power_saver - This option enables the server to use the power saving features of VESA DPMS compatible monitors. The suspend level is currently not supported. Refer to the XF86Config(4/5) manual page for details of how to set the timeouts for the different levels of operation. This option is experimental.

noaccel - for Cirrus and WD chipsets. This option disables the accelerated features for the clgd5426, clgd5428, wd90c24, wd90c31 and wd90c33 chipsets.

fifo_conservative - for Cirrus chipsets. This option sets the CRT FIFO threshold to a conservative value for dot clocks above 65MHz. This reduces performance, but may help in eliminating problems with ``streaks'' on the screen during BitBLT operations

fifo_aggressive - for Cirrus chipsets. This option sets the CRT FIFO threshold to an aggressive value for dot clocks above 65MHz. This may increase performance.

slow_dram - for Cirrus chipsets. This option sets the DRAM timings for slow DRAM chips.

fast_dram - for ET4000 and Cirrus chipsets. This option sets the DRAM timings for fast DRAM chips.

no_2mb_banksel - for Cirrus chipsets. This option is required for Cirrus cards with 2MB of videoram which is in the form of 512kx8 DRAMs (4 chips) rather than 256kx4 DRAMs (16 chips).

no_bitblt - for Cirrus chipsets. This option disables use of hardware BitBLT.

linear - Attempt a linear mapping of the framebuffer into high memory. Currently only supported for some Cirrus configurations.

med_dram, favour_bitblt, sw_cursor, clgd6225_lcd, mmio - more Cirrus-specific options. Refer to /usr/X11R6/lib/X11/doc/README.cirrus for a detailed description of Cirrus options.

speedup "selection"
sets the selection of SpeedUps to use. The optional selection string can take the following values:


If the selection string is omitted, or if the speedup option is omitted, the selection defaults to "all". Some of the SpeedUps can only be used with the ET4000, WD90C31 and WD90C33 chipsets and others requires a virtual resolution with a xdim of 1024. SpeedUps that won't work with a given configuration are automatically disabled.

disables the SpeedUp code. This is equivalent to speedup "none".

Ramdac "ramdac-type"
This specifies the type of RAMDAC used on the board. Only the ARK driver currently uses this. RAMDAC types recognised include:

att20c490 - AT&T 20C490 or compatible 8-bit RAMDAC.

att20c498 - AT&T 20C498 or compatible 16-bit RAMDAC.

zoomdac - RAMDAC used by the Hercules Stingray Pro/V and 64/V.

stg1700 - STG1700 or compatible RAMDAC.

Note that XFree86 has some internal capabilities to determine what hardware it is running on. Thus normally the keywords chipset, clocks, and videoram don't have to be specified. But there may be occasions when this autodetection mechanism fails, (for example, too high of load on the machine when you start the server). For cases like this, one should first run XF86_SVGA on an unloaded machine, look at the results of the autodetection (that are printed out during server startup) and then explicitly specify these parameters in the configuration file. It is recommended that all parameters, especially Clock values, be specified in the XF86Config file.


The SVGA color X server

Server configuration file

Server configuration file

Extra documentation for the ARK driver

Extra documentation for the ATI vgawonder driver

Extra documentation for the Cirrus driver

Extra documentation for the Trident driver

Extra documentation for the ET4000 and ET3000 drivers

Extra documentation for the Oak driver

Extra documentation for the Video7 driver

Extra documentation for the WD/PVGA driver

Note: <XRoot> refers to the root of the X11 install tree.


X(1), Xserver(1), XFree86(1), XF86Config(4/5), xf86config(1), xvidtune(1), xdm(1), xinit(1)


Bug reports are welcome, and should be emailed to the address listed below.


XFree86 source is available from the FTP server ftp.XFree86.org. Send email to XFree86@XFree86.org for details.


Refer to the XFree86(1) manual page.

Table of Contents