Information for S3 ViRGE, ViRGE/DX, ViRGE/GX, ViRGE/GX2, ViRGE/MX and ViRGE/VX Users : XF86_SVGA server : Configuration
Previous: Known limitations
Next: Hints for LCD configuration (S3 ViRGE/MX)

## 3.3. Configuration

The ViRGE SVGA driver supports a large number of XF86Config options, which can be used to tune PCI behavior and improve performance.

Memory options:

- "slow_edodram" will switch the ViRGE to 2-cycle edo mode. Try this if you encounter pixel corruption on the ViRGE. Using this option will cause a large decrease in performance.
- "early_ras_precharge" and "late_ras_precharge" will modify the memory timings, and may fix pixel corruption on some cards. The default behavior is set by the BIOS, and is normally "late_ras_precharge".
- "set_mclk value" sets the video memory clock rate to 'value' (in MHz). The performance of the card is directly proportional to the memory clocking, so this may provide a performance increase. The BIOS setting for your card is printed at server start-up. Often, "low-cost" cards use the S3 default of 50MHz. This can often be exceeded with faster memory, some cards may function reliably at 60 or 65 MHz (even higher on some recent /DX and /GX cards). Note that S3 only officially supports an MCLK of 50MHz and XFree86 does not encourage exceeding those specs. *** Note: This option should not be preceded by the "Option" keyword!

Acceleration and graphic engine:

- "noaccel" turns off all acceleration
- "fifo_aggressive", "fifo_moderate" and "fifo_conservative" alter the settings for the threshold at which the pixel FIFO takes over the internal memory bus to refill itself. The smaller this threshold, the better the acceleration performance of the card. You may try the fastest setting ("aggressive") and move down if you encounter pixel corruption. The optimal setting will probably depend on dot-clock and on color depth. Note that specifying any of these options will also alter other memory settings which should increase performance, so you should at least use "fifo_conservative" (this uses the chip defaults).

PCI options:

- "pci_burst_on" will enable PCI burst mode. This should work on all but a few "broken" PCI chipsets, and will increase performance.
- "pci_retry" will allow the driver to rely on PCI Retry to program the ViRGE registers. "pci_burst_on" must be enabled for this to work. This will increase performance, especially for small fills/blits, because the driver does not have to poll the ViRGE before sending it commands to make sure it is ready. It should work on most recent PCI chipsets. A possible side-effect is that it may interfere with DMA operations on the PCI bus (e.g. sound cards, floppy drive).

Cursor:

- "hw_cursor" turns on the hardware cursor.

Color depth options and limitations:

- Pixel multiplexing is used above 80MHz for 8bpp on the ViRGE.
- 15bpp is supported, use "-bpp 15" as an option to the server.
- 24bpp is supported using the STREAMS engine.
- 32bpp uses STREAMS as well; however, because the ViRGE does not really support 32 bpp "natively", acceleration is quite limited.
- Both 24bpp and 32bpp do not support interlace modes.
- 32bpp is limited to a width of < 1024 pixels. (1024x768 is not possible, even if you have the memory.) This is a hardware limit of ViRGE chips.

Information for S3 ViRGE, ViRGE/DX, ViRGE/GX, ViRGE/GX2, ViRGE/MX and ViRGE/VX Users : XF86_SVGA server : Configuration
Previous: Known limitations
Next: Hints for LCD configuration (S3 ViRGE/MX)