Table of Contents
s3virge - S3 ViRGE video driver
Section "Device"
Identifier "devname"
Driver "s3virge"
...
[ Option "optionname" ["optionvalue"]]
EndSection
s3virge is an XFree86 driver for S3 based video
cards. The driver is fully accelerated, and provides support for the following
framebuffer depths: 8, 15, 16, and 24. All visual types are supported for
depth 8, and TrueColor visuals are supported for the other depths. XVideo
hardware up scaling is supported in depth 16 and 24 on the DX, GX, GX2,
MX, MX+, and Trio3D/2X. Doublescan modes are supported and tested in depth
8 and 16 on DX, but disable XVideo. Doublescan modes on other chipsets
are untested.
The s3virge driver supports PCI and AGP
video cards based on the following S3 chips:
- ViRGE
- 86C325
- ViRGE VX
- 86C988
- ViRGE DX
- 86C375
- ViRGE GX
- 86C385
- ViRGE GX2
- 86C357
- ViRGE MX
- 86C260
- ViRGE
MX+
- 86C280
- Trio 3D
- 86C365
- Trio 3D/2X
- 86C362, 86C368
Please
refer to XF86Config(5)
for general configuration details. This section
only covers configuration details specific to this driver. All options
names are case and white space insensitive when parsed by the server, for
example, "virge vx" and "VIRGEvx" are equivalent.
The driver auto-detects
the chipset type, but the following ChipSet names may optionally be specified
in the config file ""Device"" section, and will override the auto-detection:
"virge", "86c325", "virge vx", "86c988", "virge dx", "86c375", "virge gx",
"86c385", "virge gx2", "86c357", "virge mx", "86c260", "virge mx+", "86c280",
"trio 3d", "86c365", "trio 3d/2x", "86c362", "86c368".
The following Cursor
Options are supported:
- Option "HWCursor" ["boolean"]
- Enable or disable
the HW cursor. Default: on.
- Option "SWCursor" ["boolean"]
- Inverse of "HWCursor".
Default: off.
The following display Options are supported:
- Option "ShadowFB"
["boolean"]
- Use shadow framebuffer. Disables HW acceleration. Default:
off.
- Option "Rotate" "cw | ccw"
- Rotate the screen CW - clockwise or CCW - counter
clockwise. Disables HW Acceleration and HW Cursor, uses ShadowFB. Default:
no rotation.
- Option "XVideo" ["boolean"]
- Disable XVideo support by using
the off option. This changes FIFO settings which prevent screen noise for
high-res modes. Default: on
The following video memory Options are supported:
- Option "slow_edodram"
- Switch the standard 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. Default: off.
- Option "fpm_vram"
- Switch
the ViRGE/VX to fast page mode vram mode. Default: off.
- Option "slow_dram
| fast_dram"
- Change Trio 3D and 3D/2X memory options. Default: Use BIOS
defaults.
- Option "early_ras_precharge | late_ras_precharge"
- adjust memory
parameters. One of these will us the same settings as your video card defaults,
and using neither in the config file does the same. Default: none.
- Option
"set_mclk" "integer"
- sets the memory clock, where integer is in kHz, and
integer <= 100000. Default: probe the memory clock value, and use it at
server start.
- Option "set_refclk" "integer"
- sets the ref clock for ViRGE
MX, where integer is in kHz. Default: probe the memory clock value, and
use it at server start.
The following acceleration and graphics engine
Options are supported:
- Option "NoAccel"
- Disable acceleration. Very useful
for determining if the driver has problems with drawing and acceleration
routines. This is the first option to try if your server runs but you see
graphic corruption on the screen. Using it decreases performance, as it
uses software emulation for drawing operations the video driver can accelerate
with hardware. Default: acceleration is enabled.
- Option "fifo_aggressive
| fifo_moderate | 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 (fifo_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 may increase performance, so
trying fifo_conservative will in most cases be a slight benefit (this uses
the chip defaults). If pixel corruption or transient streaking is observed
during drawing operations then removing any fifo options is recommended.
Default: none.
The following PCI bus Options are supported:
- Option "pci_burst"
["boolean"]
- will enable PCI burst mode. This should work on all but a few
broken PCI chipsets, and will increase performance. Default: off.
- Option
"pci_retry" ["boolean"]
- will allow the driver to rely on PCI Retry to program
the ViRGE registers. pci_burst 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. Default:
off.
The following ViRGE MX LCD Options are supported:
- Option "lcd_center"
- Option "set_lcdclk" "integer"
- allows setting the clock for a ViRGE MX LCD
display. integer is in Hz. Default: use probed value.
The following additional
Options are supported:
- Option "ShowCache" ["boolean"]
- Enable or disable
viewing offscreen cache memory. A development debug option. Default: off.
- Option "mx_cr3a_fix" ["boolean"]
- Enable or disable a cr3a fix added for
ViRGE MX. Default: on.
XFree86(1)
, XF86Config(5)
, xf86config(1)
,
Xserver(1)
, X(7)
The VideoRam generic driver parameter is presently
ignored by the s3virge driver. On PPC this is reported to cause problems
for 2M cards, because they may autodetect as 4M.
For assistance
with this driver, or XFree86 in general, check the XFree86 web site at
http://www.xfree86.org.
A FAQ is available on the web site at http://www.xfree86.org/FAQ/.
If you find a problem with XFree86 or have a question not answered in
the FAQ please use our bug report form available on the web site or send
mail to XFree86@XFree86.org. When reporting problems with the driver send
as much detail as possible, including chipset type, a server output log,
and operating system specifics.
Kevin Brosius, Matt Grossman,
Harald Koenig, Sebastien Marineau, Mark Vojkovich.
Table of Contents