SIS(4)
π SIS(4): SiS and XGI video driver π
(from the Kernel Interfaces Manual, bestie β okay so let's get into it π )
β¨ NAME β¨
sis β the SiS and XGI video driver. That's the name, that's the vibe, periodt.
πΈ SYNOPSIS πΈ
Drop it into your config like this:
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. Slay. β¨
π¦ SUPPORTED HARDWARE π¦
The sis driver supports PCI, AGP and PCIe video cards based on the following chipsets:
SiS5597/5598SiS530/620SiS6326/AGP/DVDSiS300/305SiS540SiS630/730SiS315/E/H/PROSiS550/551/552SiS650/651/661/741SiS330(Xabre)SiS760/761XGI Volari V3/V5/V8XGI Volari Z7
In the following text, these terms are used:
- old series β
SiS5597/5598,530/620and6326/AGP/DVD - 300 series β
SiS300/305,540and630/730 - 315/330/340 series β
SiS315,55x,330,661/741/76x(plus M, FX, MX, GX variants thereof),340and 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. Iykyk. π«Ά
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. Not me reading the docs before tweaking my config π
β 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 π«
Okay so 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. Bestie, why? 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. Heads up though: 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. Copy that example exactly, bestie β we do not βfixβ the manpage here π
πΊ 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. TV mode era, iconic. πΊ
The following driver Options are supported on the old series:
Option "TurboQueue" "boolean"β Enable or disable TurboQueue mode. Default: off forSIS530/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 be 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 arePALorNTSC. 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: 0Option "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: 0Option "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 areOFF,LOW,MED,HIGHorADAPTIVE. By experience,ADAPTIVEyields the best results, hence it is the default. Obsessed with a sensible default, honestly.
π 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. Dual head main character energy. π
The driver supports the following video bridges:
SiS301SiS301B(-DH)SiS301CSiS301LVSiS302(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. We love an inclusive support list. π«Ά
πΊ 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. Not the hardware bug jumping out π
π₯ 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). Overlay lore, no cap.
πΌοΈ 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. Important little caveat, bestie. πΈ
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 be 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 CRT1Option "ForceCRT1" "boolean"β Force CRT1 to be on or 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-detectOption "ForceCRT2Type" "string"β Force display type to one of:NONE,TV,SVIDEO,COMPOSITE,SVIDEO+COMPOSITE,SCART,LCD,VGA;NONEwill disable CRT2. TheSVIDEO,COMPOSITE,SVIDEO+COMPOSITEandSCARTparameters 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 eitherPALorNTSC. On some machines with 630, 730 and the 315/330/340 series,PALM,PALNandNTSCJare 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: 0Option "TVYPosOffset" "integer"β this one nudges the image up or down on your TV output β¨ The range is from-32to32. Heads up though: it's not supported on the Chrontel 7019 π Default:0Option "SISTVXScale" "integer"β picks the horizontal zooming level for TV output π The range is from-16to16. Only supported on SiS video bridges, iykyk. Default:0Option "SISTVYScale" "integer"β same vibe but vertical π it sets the vertical zooming level for TV output in these modes:640x480,800x600. And on the 315/330/340 series, also720x480,720x576and768x576. Range is-4to3. Only supported on SiS video bridges. Default:0Option "CHTVOverscan" "boolean"β on machines with a Chrontel TV encoder, this one forces the TV mode to overscan or underscan πΈonmeans overscan,offmeans underscan. Default: BIOS setting.Option "CHTVSuperOverscan" "boolean"β on machines with a Chrontel 7005 TV encoder this enables a super-overscan mode π It's only supported if the TV standard is PAL, no cap. Super overscan will produce an image on the TV which is larger than the viewable area β like, it literally goes off the edge, don't say I didn't warn you.
The driver supports many more options, bestie β 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, periodt.
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. Slay.
Okay but here's the messy part π if you're running a2.4series Linux kernel and usesisfbfor video memory management only, ie you startedsisfbwithmode=noneand still have a text mode console, there is no communication betweensisfband the X driver. For this purpose, theOption "MaxXFBMem" "integer"exists. This option must be set to the same value as given tosisfbthrough itsmemparameter, ie the amount of memory to use for X in kilobytes.
If you started sisfb without the mem argument, sisfb will reserve:
12288KBif more than16MBof total video RAM is available,8192KBif between12and16MBof video RAM is available,4096KBin 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 Linux2.6.3and under *BSD,sisfbis not required for memory management π¨ Hence, this option is mandatory on such systems not runningsisfbto 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. Like, literally unplayable π
Option "DRI" "boolean"β lets you enable or disable DRI πΊ By default, DRI ison.Option "AGPSize" "integer"β lets you select the amount of AGP memory to be used for DRI π The amount is to be specified in megabyte, the default is8.
π 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. Iconic lineup honestly π
okay that's the whole page bestie, go forth and configure your SiS card π this was SIS(4) from X Version 11, xf86-video-sis 0.12.0 β mwah, no notes πβ¨
π¦ where this page comes from
- alpine 3.24: xf86-video-sis-doc 0.12.0-r4 Β· MIT
- nixos 26.05: xf86-video-sis 0.12.0
- nixpkgs unstable: xf86-video-sis 0.12.0
- opensuse-leap 16.0: xf86-video-sis 0.12.0-bp160.1.1 Β· BSD-3-Clause AND MIT
- opensuse-leap 16.0: xf86-video-sis 0.12.0-bp160.1.1 Β· BSD-3-Clause AND MIT
- opensuse-leap 16.0: xf86-video-sis 0.12.0-bp160.1.1 Β· BSD-3-Clause AND MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms