Resolve 174 out of 180 -Wdiscarded-qualifiers warnings
[xf86-video-sis.git] / README
blob426bdcced94cf7b70f6a8f97aa0d8b3d25df84db
1   Information for SiS and XGI Users
2   Thomas Winischhofer (thomas@winischhofer.net)
3   6 July 2005
4   ____________________________________________________________
6   Table of Contents
9   1. Introduction
10   2. xorg.conf Options
11      2.1 For all chipsets
12      2.2 Old series specific options
13      2.3 300/315/330/340 series specific options
14      2.4 300 series specific options
15      2.5 315/330/340 series specific options
18   ______________________________________________________________________
20   1.  Introduction
23   This driver is written by Thomas Winischhofer and is a (nearly)
24   complete re-write of a driver written for the SiS6326 and SiS530 by
25   Alan Hourihane and others.
27   It currently supports the following chipsets:
29   o  old series: SiS 5597/5598, 6236/AGP/DVD, 530/620
31   o  300 series: SiS 300/305, 540, 630/730
33   o  315 series: SiS 315/E/PRO, 55x, 650, 651, M650, 740,
34      [M]661&[F/M/G]X, [M]741[GX]
36   o  330 series: SiS 330 ("Xabre"), [M]760[GX], [M]761[GX]
38   o  340 series: SiS 34x, XGI Volari Z7, V3XT, V5, V8
40   Among other features, the driver supports
42   o  8/16/24 bits color depth; old series also 15
44   o  Hardware cursor; 315/330/340 series: Color HW cursor
46   o  XAA; EXA; XVideo (Xv); RENDER and other extensions
48   o  6326: TV output
50   o  300/315/330/340 series: TV output via Chrontel TV encoders or SiS
51      video bridges
53   o  300/315/330/340 series: LCD output via LVDS transmitters or SiS
54      video bridges
56   o  300/315/330/340 series: Dual head mode; Xinerama; Merged
57      framebuffer mode
59   o  300/315/330/340 series: Interface for SiSCtrl (see below)
61   This document provides a brief overview over the driver's features and
62   configuration options. Please see
63   http://www.winischhofer.eu/linuxsisvga.shtml for detailed
64   documentation and updates.
67   2.  xorg.conf Options
70   The following options are of particular interest for the SiS driver.
71   Each of them must be specified in the Device section of the xorg.conf
72   file for this card.
74   In the list below, the options' arguments are described by type. For
75   "boolean", the keywords "on", "true" and "yes", as well as "off",
76   "false" and "no" respectively have the same meaning.
79   2.1.  For all chipsets
83      Option
84         >
86      Option
87         These options select whether the software (SW) or hardware (HW)
88         cursor should be used. The default is using the hardware cursor.
90      Option
91         Disables 2D acceleration. By default, 2D acceleration is
92         enabled.
94      Option
95         Determines which acceleration architecture should be used.
96         Possible arguments are "XAA" or "EXA". As of this writing, EXA
97         is still experimental and it is not recommended to be used on
98         production machines. By default, XAA will be used.
100      Option
101         This option enables clockwise ("CW") or counter-clockwise
102         ("CCW") rotation of the display. Enabling either CW or CCW
103         rotation disables the RandR extension as well as all 2D
104         acceleration and Xv support. Default: no rotation.
106      Option
107         This option enables reflecting the display horizontally ("X"),
108         vertically ("Y") or in both directions ("XY"). Enabling
109         reflection disables the RandR extension as well as all 2D
110         acceleration and Xv support. Default: no rotation.
112      Option
113         This option enables the shadow framebuffer layer. By default, it
114         is disabled.
116      Option
117         Disables the XVideo (Xv) support. Apart from the XGI Volari Z7,
118         all chipsets support Xv. By default, XVideo support is enabled.
120      Option
121         Enables or disables gamma correction. Default: gamma correction
122         is enabled.
125   2.2.  Old series specific options
129      Option
130         Enables 1 cycle memory access for read and write operations. The
131         default depends on the chipset used.
133      Option
134         SiS chipsets have the ability to extend the engine command queue
135         in video RAM. This concept is called "TurboQueue" and gives some
136         performance improvement. Due to hardware bugs, the TurboQueue is
137         disabled on the 530/620, otherwise enabled by default.
139      Option
140         For 5597/5598 only. This option, if set, disables the CPU to VGA
141         host bus.  Disabling the host bus will result in a severe
142         performance regression.
144      VideoRAM [size]
145         The SiS 6326 can only directly address 4096K bytes of video RAM.
146         However, there are some cards out there featuring 8192K (8MB) of
147         video RAM. This RAM is not addressable by the engines.
148         Therefore, by default, the driver will only use 4096K. This
149         behavior can be overridden by specifying the amount of video RAM
150         using the VideoRAM keyword. If more than 4096K is specified, the
151         driver will disable 2D acceleration, Xv and the HW cursor. On
152         all other chipsets, this keyword is ignored. The size argument
153         is expected in KB, but without "KB".
155      Option
156         Due to hardware bugs, XVideo may display a corrupt image when
157         using YV12 encoded material. This option, if set, disables
158         support for YV12 and hence forces the Xv-aware application to
159         use either YUV2 or XShm for video output.
161      Option
162         (6326 only) Selects the TV output standard. May be PAL or NTSC.
163         By default, this is selected by a jumper on the card.
166   2.3.  300/315/330/340 series specific options
170      Option
171         This option enables/disables the driver's interface for the
172         SiSCtrl utility. Please see
173         http://www.winischhofer.eu/linuxsisvga.shtml for more
174         information.
176      Option
177         (300 series only) SiS chipsets have the ability to extend the
178         engine command queue in video RAM. This concept is called
179         "TurboQueue" and gives some performance improvement. The
180         TurboQueue is enabled by default.
182      Option
183         Enables or disables CRT1 (= the external VGA monitor). By
184         default, the driver will use CRT1 if a monitor is detected
185         during server start. Some older monitors can't be detected, so
186         they may require setting this option to true. To disable CRT1
187         output, set this option to false.
189      Option
190         (For SiS 650, M650, 651, 661, 741, 760 with either SiS 301LV,
191         302LV or SiS 301C video bridge only) The argument may be "VGA",
192         "LCD" or "OFF".  Specifying LCD will force the driver to use the
193         VGA controller's CRT1 channel for driving the LCD while CRT2 is
194         free for TV usage. "OFF" is the same as setting the option
195         ForceCRT1 to "false". Default is VGA.
197      Option
198         Selects the CRT2 output device type. Valid parameters are "LCD",
199         "TV", "SVIDEO", "COMPOSITE", "SVIDEO+COMPOSITE", "SCART", "VGA",
200         "YPBPR480I", "YPBPR480P", "YPBPR720P", "YPBPR1080I" or "NONE".
201         NONE disables CRT2.  SVIDEO, COMPOSITE, SVIDEO+COMPOSITE, SCART
202         and all the YPBPR alternatives are only for systems with a SiS
203         video bridge and select the desired plug or TV standard type.
204         For Chrontel systems, TV should be used instead. VGA means
205         secondary VGA and is only available on some SiS video bridges
206         (301, 301B, 301C).
208      Option
209         (For SiS video bridges only) This option enables or disables
210         gamma correction for CRT2. Default: gamma correction for CRT2 is
211         enabled.
213      Option
214         Although this option is accepted for all chipsets, it currently
215         only makes sense on the 300 series; DRI is only supported on
216         these chipsets.  This option enables/disables DRI.
218      Option
219         Selects the TV output standard. May be PAL or NTSC, on some
220         machines (depending on the hardware) also PALM and PALN.
221         Default: BIOS setting.
223      Option
224         >
226      Option
227         These options allow relocating the image on your TV. Both
228         options take an integer within the range of -16 to 16. Default:
229         0. Not supported for Chrontel 7019.
231      Option
232         (For Chrontel TV encoders only) Selects whether TV output should
233         be overscan or underscan.
235      Option
236         (For Chrontel 7005 TV encoders in PAL mode only) Selects whether
237         TV output should be super-overscan (slightly larger than the
238         viewable area) or not.
240      Option
241         >
243      Option
244         (For SiS video bridges only) These options allow zooming the
245         image on your TV. SISTVXScale takes an integer within the range
246         of -16 to 16.  SISTVYScale accepts -4 to 3. Default: 0. Not all
247         modes can be scaled.
250   2.4.  300 series specific options
254      Option
255         This option might only be needed if you are running X on a Linux
256         2.4 series kernel. This option is not needed and should be
257         omitted on Linux 2.6 and *BSD.
259         The Linux kernel features a framebuffer driver named "sisfb"
260         which takes care of memory management for DRI/DRM (such as for
261         3D texture data). In order to keep the X driver and sisfb from
262         overwriting each other's video memory, sisfb reserves a certain
263         amount of video memory for the X driver. Reserved memory is for
264         X 2D, pixmap cache and video data only. Sisfb will not present
265         this memory to the DRI. The amount of reserved memory can either
266         be selected using sisfb's mem parameter or auto-selected
267         depending on the total amount of video RAM available.
269         Fact of the matter is, the X driver needs to know about the
270         amount of RAM sisfb reserved. For this purpose, the Option
271         "MaxXFBMem" exists.
273         If you start sisfb with a valid mode (ie you run a graphical
274         console), the X driver can communicate with sisfb and doesn't
275         require setting the MaxXFBMem option at all. The X driver will
276         receive enough information from sisfb in this case.
278         If you, on the other hand, use sisfb for memory management only,
279         ie you started sisfb with mode=none and still have a text mode
280         console, there is no communication between sisfb and the X
281         driver. In this - and ONLY this - case, you need to set
282         MaxXFBMem to the same value as you gave sisfb with its mem
283         parameter. If you didn't specify any mem parameter, sisfb will
284         reserve (and you will have to specify by MaxXFBMem) 12288KB if
285         more than 16MB of total video RAM is available, 8192KB if
286         between 12 and 16MB of video RAM is available, 4096KB in all
287         other cases. The size is expected in KB, without the "KB".
289         Final word of advice: If you intend to use DRI on an integrated
290         chipset (such as the 540/630/730), it is recommended to set the
291         total video memory in the BIOS setup utility to 64MB.
294   2.5.  315/330/340 series specific options
298      Option
299         Enables or disables RENDER acceleration. This feature, for
300         instance, accelerates output of anti-aliased text. By default,
301         RENDER acceleration is enabled. RENDER acceleration is currently
302         only supported for XAA, not EXA.
304      Option
305         (For 315, 650, 740, 330, 340 and XGI chips only) This option
306         selects whether the XVideo (Xv) overlay should be displayed on
307         CRT1 or CRT2. Setting this option means CRT2. The other CRT will
308         only display the (by default: blue) color key or a black/red
309         pattern.