NAME¶
sis - SiS and XGI video driver
SYNOPSIS¶
Section "Device"
Identifier "devname"
Driver "sis"
...
EndSection
DESCRIPTION¶
sis is an Xorg driver for SiS (Silicon Integrated Systems) and XGI video
chips. The driver is accelerated and provides support for colordepths of 8, 16
and 24 bpp. XVideo, Render and other extensions are supported as well.
SUPPORTED HARDWARE¶
The
sis driver supports PCI, AGP and PCIe video cards based on the
following chipsets:
SiS5597/5598 SiS530/620 SiS6326/AGP/DVD SiS300/305
SiS540 SiS630/730 SiS315/E/H/PRO SiS550/551/552
SiS650/651/661/741 SiS330 (Xabre) SiS760/761 XGI
Volari V3/V5/V8 XGI Volari Z7
In the following text, the following terms are used:
old series for SiS5597/5598, 530/620 and 6326/AGP/DVD
300 series for SiS300/305, 540 and 630/730
315/330/340 series for SiS315, 55x, 330, 661/741/76x (plus M, FX, MX, GX
variants thereof), 340 and all XGI chips.
CONFIGURATION DETAILS¶
Please refer to
xorg.conf(5) for general configuration details. This section
only covers configuration details specific to this driver.
Detailed information on all supported options can be obtained at
http://www.winischhofer.eu/linuxsisvga.shtml
This manpage only covers a subset of the supported options.
1. For all supported chipsets
The following driver
options are supported on all chipsets:
- Option "NoAccel"
"boolean"
- Disable or enable 2D acceleration. Default: acceleration is
enabled.
- Option "HWCursor"
"boolean"
- Enable or disable the HW cursor. Default: HWCursor is
on.
- Option "SWCursor"
"boolean"
- The opposite of HWCursor. Default: SWCursor is off.
- Option "Rotate"
"string"
- Rotate the display clockwise ("CW") or
counter-clockwise ("CCW"). This mode is unaccelerated. Using
this option disables XVideo and the Resize and Rotate extension (RandR).
Rotation and reflection (see below) are mutually exclusive. Default: no
rotation.
- Option "Reflect"
"string"
- Reflect (mirror) the display horizontally ("X"),
vertically ("Y") or both ("XY"). This mode is
unaccelerated. Using this option disables XVideo and the Resize and Rotate
extension (RandR). Rotation (see above) and reflection are mutually
exclusive. Default: no reflection.
- Option "CRT1Gamma"
"boolean"
- Enable or disable gamma correction. (On the 300 and
315/330/340 series, this option only affects CRT1 output). Default: Gamma
correction is enabled.
2. Old series specific information
The driver will auto-detect the amount of video memory present for all these
chips, but in the case of the 6326, it will limit the memory size to 4MB. This
is because the 6326's 2D engine can only address 4MB. The remaining memory
seems to be intended for 3D texture data, since only the 3D engine can address
RAM above 4MB. However, you can override this limitation using the
"VideoRAM" option in the Device section if your board has
more than 4MB and you need to use it. However, 2D acceleration, XVideo and the
HWCursor will be disabled in this case.
For the 6326, the driver has two built-in modes for high resolutions which you
should use instead of the default ones. These are named
"SIS1280x1024-75" and
"SIS1600x1200-60" and
they will be added to the list of default modes. To use these modes, just
place them in your Screen section. Example:
Modes "SIS1600x1200-60" "SIS1280x1024x75"
"1024x768" ...
Of these modes, 1280x1024 is only available at 8, 15 and 16bpp. 1600x1200 is
available at 8bpp only.
TV support for the 6326
TV output is supported for the 6326. The driver will auto detect a connected TV
and in this case add the following display modes to the list of available
display modes: "PAL800x600", "PAL800x600U",
"PAL720x540", "PAL640x480", "NTSC640x480",
"NTSC640x480U" and "NTSC640x400". Use these modes like the
hi-res modes described above.
The following driver
Options are supported on the old series:
- Option "TurboQueue"
"boolean"
- Enable or disable TurboQueue mode. Default: off for
SIS530/620, on for the others
- Option "FastVram"
"boolean"
- Enable or disable FastVram mode. Enabling this sets the
video RAM timing to one cycle per read operation instead of two cycles.
Disabling this will set two cycles for read and write operations. Leaving
this option out uses the default, which varies depending on the
chipset.
- Option "NoHostBus"
"boolean"
- (SiS5597/5598 only). Disable CPU-to-VGA host bus support.
This speeds up CPU to video RAM transfers. Default: Host bus is
enabled.
- Option "NoXVideo"
"boolean"
- Disable XV (XVideo) extension support. Default: XVideo is
on.
- Option "NoYV12"
"boolean"
- Disable YV12 Xv support. This might me required due to
hardware bugs in some chipsets. Disabling YV12 support forces Xv-aware
applications to use YUV2 or XShm for video output. Default: YV12 support
is on.
- Option "TVStandard"
"string"
- (6326 only) Valid parameters are PAL or NTSC.
The default is set by a jumper on the card.
- Option "TVXPosOffset"
"integer"
- (6326 only) This option allows tuning the horizontal
position of the image for TV output. The range is from -16 to 16. Default:
0
- Option "TVYPosOffset"
"integer"
- (6326 only) This option allows tuning the vertical position
of the image for TV output. The range is from -16 to 16. Default: 0
- Option "SIS6326TVEnableYFilter"
"boolean"
- (6326 only) This option allows enabling/disabling the Y
(chroma) filter for TV output.
- Option "SIS6326TVAntiFlicker"
"string"
- (6326 only) This option allow enabling/disabling the anti
flicker facility for TV output. Possible parameters are OFF, LOW, MED,
HIGH or ADAPTIVE. By experience, ADAPTIVE yields the
best results, hence it is the default.
2. 300 and 315/330/340 series specific information
The 300 and 315/330/340 series, except the XGI Z7, feature two CRT controllers
and very often come with a video bridge for controlling LCD and TV output.
Hereinafter, the term
CRT1 refers to the VGA output of the chip, and
CRT2 refers to either LCD, TV or secondary VGA. Due to timing reasons,
only one CRT2 output can be active at the same time. But this limitation does
not apply to using CRT1 and CRT2 at the same time which makes it possible to
run the driver in dual head mode.
The driver supports the following video bridges:
SiS301 SiS301B(-DH) SiS301C SiS301LV
SiS302(E)LV
Instead of a video bridge, some machines have a third party
LVDS
transmitter to control LCD panels, and/or a
Chrontel 7005 or
7019 for TV output. All these are supported as well.
About TV output
The driver fully supports standard (PAL, NTSC, PAL-N, PAL-M) S-video or
composite output as well as high definition TV (HDTV) output via YPbPr plugs.
For more information on HDTV, please consult the author's website.
As regards S-video and CVBS output, the SiS301 and the Chrontel 7005 only
support resolutions up to 800x600. All others support resolutions up to
1024x768. However, due to a hardware bug, Xvideo might be distorted on SiS
video bridges if running NTSC or PAL-M at 1024x768.
About XVideo support
XVideo is supported on all chipsets of both families (except the XGI Volari Z7
which lacks hardware support for video overlays). However, there are some
differences in hardware features which cause limitations. The 300 series as
well as the SiS55x, M650, 651, 661FX, M661FX, M661MX, 741, 741GX, M741, 76x,
M76x support two video overlays. The SiS315/H/PRO, 650/740, 330, 340 and the
XGI Volari V3, V5 and V8 chips support only one such overlay. On chips with
two overlays, one overlay is used for CRT1, the other for CRT2. On the other
chipsets, the option
"XvOnCRT2" can be used to select the
desired output device (CRT1 or CRT2).
About Merged Framebuffer support
Merged framebuffer mode is similar to dual head/Xinerama mode (for using two
output devices of one card at the same time), but has a few advantages which
make me recommend it strongly over Xinerama. Please see
http://www.winischhofer.eu/linuxsisvga.shtml for detailed information.
About dual-head support
Dual head mode with or without Xinerama is fully supported, be it with one card
driving two outputs, be it two cards. Note that colordepth 8 is not supported
in dual head mode if run on one card with two outputs.
The following driver
Options are supported on the 300 and 315/330/340
series:
- Option "NoXVideo"
"boolean"
- Disable XV (XVideo) extension support. Default: XVideo is
on.
- Option "XvOnCRT2"
"boolean"
- On chipsets with only one video overlay, this option can
used to bind the overlay to CRT1 ( if a monitor is detected and if this
option is either unset or set to false ) or CRT2 ( if a CRT2 device
is detected or forced, and if this option is set to true ). If
either only CRT1 or CRT2 is detected, the driver decides automatically. In
Merged Framebuffer mode, this option is ignored. Default: overlay is used
on CRT1
- Option "ForceCRT1"
"boolean"
- Force CRT1 to be on of off. If a monitor is connected, it
will be detected during server start. However, some old monitors are not
detected correctly. In such cases, you may set this option to on in
order to make the driver initialize CRT1 anyway. If this option is set to
off , the driver will switch off CRT1. Default: auto-detect
- Option "ForceCRT2Type"
"string"
- Force display type to one of: NONE , TV ,
SVIDEO , COMPOSITE , SVIDEO+COMPOSITE , SCART
, LCD , VGA ; NONE will disable CRT2. The SVIDEO,
COMPOSITE, SVIDEO+COMPOSITE and SCART parameters are for SiS video bridges
only and can be used to force the driver to use a specific TV output
connector (if present). For further parameters, see the author's website.
Default: auto detect.
- Option "CRT2Gamma"
"boolean"
- Enable or disable gamma correction for CRT2. Only supported
for SiS video bridges. Default: Gamma correction for CRT2 is on.
- Option "TVStandard"
"string"
- Force the TV standard to either PAL or NTSC.
On some machines with 630, 730 and the 315/330/340 series, PALM ,
PALN and NTSCJ are supported as well. Default: BIOS
setting.
- Option "TVXPosOffset"
"integer"
- This option allows tuning the horizontal position of the
image for TV output. The range is from -32 to 32. Not supported on the
Chrontel 7019. Default: 0
- Option "TVYPosOffset"
"integer"
- This option allows tuning the vertical position of the
image for TV output. The range is from -32 to 32. Not supported on the
Chrontel 7019. Default: 0
- Option "SISTVXScale"
"integer"
- This option selects the horizontal zooming level for TV
output. The range is from -16 to 16. Only supported on SiS video bridges.
Default: 0
- Option "SISTVYScale"
"integer"
- This option selects the vertical zooming level for TV
output in the following modes: 640x480, 800x600. On the 315/330/340
series, also 720x480, 720x576 and 768x576. The range is from -4 to 3. Only
supported on SiS video bridges. Default: 0
- Option "CHTVOverscan"
"boolean"
- On machines with a Chrontel TV encoder, this can be used to
force the TV mode to overscan or underscan. on means overscan,
off means underscan. Default: BIOS setting.
- Option "CHTVSuperOverscan"
"boolean"
- On machines with a Chrontel 7005 TV encoder, this option
enables a super-overscan mode. This is only supported if the TV standard
is PAL. Super overscan will produce an image on the TV which is larger
than the viewable area.
The driver supports many more options. Please see
http://www.winischhofer.eu/linuxsisvga.shtml for more information.
3. 300 series specific information
DRI is supported on the 300 series only. On Linux, prior to kernel 2.6.3, DRI
requires the kernel's SiS framebuffer driver (
sisfb ). The SiS DRM
kernel driver as well as the SiS DRI client driver are required in any case.
Sisfb, if installed and running, takes care of memory management for texture
data. In order to prevent the X Server and sisfb from overwriting each other's
data, sisfb reserves an amount of video memory for the X driver. This amount
can either be selected using sisfb's mem parameter, or auto-selected depending
on the amount of total video RAM available.
Sisfb can be used for memory management only, or as a complete framebuffer
driver. If you start sisfb with a valid mode (ie you gain a graphical
console), the X driver can communicate with sisfb and doesn't require any
manual configuration for finding out about the video memory it is allowed to
use.
However, if you are running a 2.4 series Linux kernel and use sisfb for video
memory management only, ie you started sisfb with mode=none and still have a
text mode console, there is no communication between sisfb and the X driver.
For this purpose, the
- Option "MaxXFBMem"
"integer"
exists. This option must be set to the same value as given to sisfb through its
"mem" parameter, ie the amount of memory to use for X in kilobytes.
If you started sisfb without the mem argument, sisfb will reserve
- 12288KB if more than 16MB of total video RAM is
available,
- 8192KB if between 12 and 16MB of video RAM is
available,
- 4096KB in all other cases.
If you intend to use DRI on an integrated chipset (540, 630, 730), I recommend
setting the total video memory in the BIOS setup utility to 64MB.
PLEASE NOTE: As of Linux 2.6.3 and under *BSD, sisfb is not required for memory
management. Hence, this option is mandatory on such systems not running sisfb
to decide how much memory X should reserve for DRI. If the option is omitted,
DRI will have no memory assigned, and all DRI applications will quit with
errors like "failed to allocate Z-buffer" or the like.
- Option "DRI"
"boolean"
- This option allows enabling or disabling DRI. By default,
DRI is on.
- Option "AGPSize"
"integer"
- This option allows selecting the amount of AGP memory to be
used for DRI. The amount is to be specified in megabyte, the default is
8.
KNOWN BUGS¶
none.
SEE ALSO¶
Xorg(1),
xorg.conf(5),
Xserver(1),
X(7)
http://www.winischhofer.eu/linuxsisvga.shtml for more information and
updates
AUTHORS¶
Author: Thomas Winischhofer. Formerly based on code by Alan Hourihane, Mike
Chapman, Juanjo Santamarta, Mitani Hiroshi, David Thomas, Sung-Ching Lin,
Ademar Reis.