Commit 5880d0f3 authored by Eric Anholt's avatar Eric Anholt

DRI XFree86-4_3_99_12-merge import

parent 2a8d0bc1
.\" $XFree86: xc/programs/Xserver/hw/xfree86/drivers/sis/sis.man,v 1.5 2001/12/17 20:52:34 dawes Exp $ .\" $XFree86: xc/programs/Xserver/hw/xfree86/drivers/sis/sis.man,v 1.11 2003/08/30 16:13:52 twini Exp $
.\" shorthand for double quote that works everywhere. .\" shorthand for double quote that works everywhere.
.ds q \N'34' .ds q \N'34'
.TH SIS __drivermansuffix__ __vendorversion__ .TH SIS __drivermansuffix__ __vendorversion__
...@@ -14,9 +14,9 @@ sis \- SiS video driver ...@@ -14,9 +14,9 @@ sis \- SiS video driver
.fi .fi
.SH DESCRIPTION .SH DESCRIPTION
.B sis .B sis
is an __xservername__ driver for SiS (Silicon Integrated Systems) video chips. The is an XFree86 driver for SiS video chips. The driver is accelerated, and
driver is accelerated, and provides support for colordepths of 8, 16 and 24 bpp. provides support for 8, 16 and 24 colordepths. XVideo, Render and other
XVideo, Render and other extensions are supported as well. extensions are supported as well.
.SH SUPPORTED HARDWARE .SH SUPPORTED HARDWARE
The The
.B sis .B sis
...@@ -29,10 +29,9 @@ driver supports PCI and AGP video cards based on the following chipsets: ...@@ -29,10 +29,9 @@ driver supports PCI and AGP video cards based on the following chipsets:
.B SiS540 .B SiS540
.B SiS630/730 .B SiS630/730
.B SiS315/H/PRO .B SiS315/H/PRO
.B SiS550/551/552 .B SiS550
.B SiS650/651/M650/661FX/M661FX/M661MX/740/741 .B SiS650/651/M650/661FX/M661FX/740/741
.B SiS330 (Xabre) .B SiS330 (Xabre)
.B SiS760
.PP .PP
In the following text, the following terms are used: In the following text, the following terms are used:
.PP .PP
...@@ -43,11 +42,9 @@ for SiS5597/5598, 530/620 and 6326/AGP/DVD ...@@ -43,11 +42,9 @@ for SiS5597/5598, 530/620 and 6326/AGP/DVD
for SiS300/305, 540 and 630/730 for SiS300/305, 540 and 630/730
.PP .PP
.B 315/330 series .B 315/330 series
for SiS315/H/PRO, 55x and (M)65x/(M)661xX/74x, 330, 760 for SiS315/H/PRO, 550 and 650/651/M650/661FX/M661FX/740/741, 330
.PP
Note: Support for 661FX, M661FX, M661MX, 741 and 760 is untested.
.SH CONFIGURATION DETAILS .SH CONFIGURATION DETAILS
Please refer to __xconfigfile__(__filemansuffix__) for general configuration Please refer to XF86Config(__filemansuffix__) for general configuration
details. This section only covers configuration details specific to this details. This section only covers configuration details specific to this
driver. driver.
.PP .PP
...@@ -73,43 +70,37 @@ The opposite of HWCursor. Default: SWCursor is off. ...@@ -73,43 +70,37 @@ The opposite of HWCursor. Default: SWCursor is off.
.TP .TP
.BI "Option \*qRotate\*q \*qCW\*q" .BI "Option \*qRotate\*q \*qCW\*q"
Rotate the display clockwise. This mode is unaccelerated, and uses Rotate the display clockwise. This mode is unaccelerated, and uses
the Shadow Frame Buffer layer. Using this option disables the Shadow Frame Buffer layer.
the Resize and Rotate extension (RandR).
Default: no rotation. Default: no rotation.
.TP .TP
.BI "Option \*qRotate\*q \*qCCW\*q" .BI "Option \*qRotate\*q \*qCCW\*q"
Rotate the display counterclockwise. This mode is unaccelerated, and Rotate the display counterclockwise. This mode is unaccelerated, and
uses the Shadow Frame Buffer layer. Using this option disables uses the Shadow Frame Buffer layer.
the Resize and Rotate extension (RandR).
Default: no rotation. Default: no rotation.
.TP .TP
.BI "Option \*qShadowFB\*q \*q" boolean \*q .BI "Option \*qShadowFB\*q \*q" boolean \*q
Enable or disable use of the shadow framebuffer layer. Enable or disable use of the shadow framebuffer layer.
Default: Shadow framebuffer is off. Default: Shadow framebuffer is off.
.TP
.BI "Option \*qCRT1Gamma\*q \*q" boolean \*q
Enable or disable gamma correction.
Default: Gamma correction is on.
.PP .PP
.I "2. Old series specific information" .I "2. Old series specific information"
.PP .PP
The driver will auto-detect the amount of video memory present for all 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 these chips, but in the 6326 case, it will limit the memory size to 4MB.
to 4MB. This is because the 6326's 2D engine can only address 4MB. The This is because the 6326's 2D engine can only address 4MB. The remaining
remaining memory seems to be intended for 3D texture data, since only memory seems to be intended for 3D texture data, since only the 3D
the 3D engine can address RAM above 4MB. However, you can override this engine can address RAM above 4MB. However, you can override this forced
limitation using the limitation using the
.B \*qVideoRAM\*q .B \*qVideoRAM\*q
option in the Device section if your board has more than 4MB and you option in the device section if your board has more than
need to use it. However, 2D acceleration, Xvideo and the HWCursor will 4MB and you need to use it. However, 2D acceleration, Xvideo and the
be disabled in this case. HWCursor will be disabled in this case.
.PP .PP
The driver will also auto-detect the maximum dotclock and DAC speed. The driver will also auto-detect the maximum dotclock and DAC speed.
If you have problems getting high resolutions because of dot clock If you have problems getting high resolutions because of dot clock
limitations, try using the limitations, try using the
.B \*qDacSpeed\*q .B \*qDacSpeed\*q
option, also in the Device section. However, this is not recommended option, also in the device section. However, this is not recommended
for the 6326. For this chip, the driver has two built-in modes for for the 6326. For this chipset, the driver has two built-in modes for
high resolutions which you should use instead. These are named high resolutions which you should use instead. These are named
.B \*qSIS1280x1024-75\*q .B \*qSIS1280x1024-75\*q
and and
...@@ -119,13 +110,13 @@ just place them in your Screen section. Example: ...@@ -119,13 +110,13 @@ just place them in your Screen section. Example:
.PP .PP
.BI "Modes \*qSIS1600x1200-60\*q \*qSIS1280x1024x75\*q \*q1024x768\*q ... .BI "Modes \*qSIS1600x1200-60\*q \*qSIS1280x1024x75\*q \*q1024x768\*q ...
.PP .PP
Of these modes, 1280x1024 is only available at 8, 15 and 16bpp. 1600x1200 1280x1024 is only available at 8, 15 and 16bpp. 1600x1200 is available
is available at 8bpp only. at 8bpp only.
.PP .PP
TV support for the 6326 TV support for the 6326
.PP .PP
TV output is supported for the 6326. The driver will auto detect a TV output is supported on the 6326. The driver will auto detect a
TV connected and in this case add the following modes to the list TV connected, and in this case add the following modes to the list
of default modes: "PAL800x600", "PAL800x600U", "PAL720x540", of default modes: "PAL800x600", "PAL800x600U", "PAL720x540",
"PAL640x480", "NTSC640x480", "NTSC640x480U" and "NTSC640x400". "PAL640x480", "NTSC640x480", "NTSC640x480U" and "NTSC640x400".
Use these modes like the hi-res modes described above. Use these modes like the hi-res modes described above.
...@@ -139,10 +130,11 @@ Enable or disable TurboQueue mode. Default: off for SIS530/620, on for ...@@ -139,10 +130,11 @@ Enable or disable TurboQueue mode. Default: off for SIS530/620, on for
the others the others
.TP .TP
.BI "Option \*qFastVram\*q \*q" boolean \*q .BI "Option \*qFastVram\*q \*q" boolean \*q
Enable or disable FastVram mode. Enabling this sets the video RAM timing 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 to only one cycle per read operation instead of two cycles. Disabling
set two cycles for read and write operations. Leaving this option out uses this will set 2 cycles for read and write operations. Leaving this
the default, which varies depending on the chipset. option out uses the default.
Default: off for read, on for write.
.TP .TP
.BI "Option \*qNoHostBus\*q \*q" boolean \*q .BI "Option \*qNoHostBus\*q \*q" boolean \*q
(SiS5597/5598 only). Disable CPU-to-VGA host bus support. This (SiS5597/5598 only). Disable CPU-to-VGA host bus support. This
...@@ -151,46 +143,39 @@ speeds up CPU to video RAM transfers. Default: Host bus is enabled. ...@@ -151,46 +143,39 @@ speeds up CPU to video RAM transfers. Default: Host bus is enabled.
.BI "Option \*qNoXVideo\*q \*q" boolean \*q .BI "Option \*qNoXVideo\*q \*q" boolean \*q
Disable XV (XVideo) extension support. Default: XVideo is on. Disable XV (XVideo) extension support. Default: XVideo is on.
.TP .TP
.BI "Option \*qNoYV12\*q \*q" boolean \*q
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.
.TP
.BI "Option \*qTVStandard\*q \*q" string \*q .BI "Option \*qTVStandard\*q \*q" string \*q
(6326 only) Valid parameters are (6326 only) Possible parameters are
.B PAL .B PAL
or or
.B NTSC. .B NTSC.
The default is set by a jumper on the card. The default is set by a jumper on the card.
.TP .TP
.BI "Option \*qTVXPosOffset\*q \*q" integer \*q .BI "Option \*qTVXPosOffset\*q \*q" integer \*q
(6326 only) This option allows tuning the horizontal position of the image (6326 only) This option allows horizontal relocation the TV output.
for TV output. The range is from -16 to 16. Default: 0 The range is from -16 to 16.
.TP .TP
.BI "Option \*qTVYPosOffset\*q \*q" integer \*q .BI "Option \*qTVYPosOffset\*q \*q" integer \*q
(6326 only) This option allows tuning the vertical position of the image (6326 only) This option allows vertical relocation the TV output.
for TV output. The range is from -16 to 16. Default: 0 The range is from -16 to 16.
.TP .TP
.BI "Option \*qSIS6326TVEnableYFilter\*q \*q" boolean \*q .BI "Option \*qSIS6326TVEnableYFilter\*q \*q" boolean \*q
(6326 only) This option allows enabling/disabling the Y (chroma) filter for (6326 only) This option allows enabling/disabling the Y filter for
TV output. TV output.
.TP .TP
.BI "Option \*qSIS6326TVAntiFlicker\*q \*q" string \*q .BI "Option \*qSIS6326TVAntiFlicker\*q \*q" string \*q
(6326 only) This option allow enabling/disabling the anti flicker facility (6326 only) This option allow enabling/disabling the anti flicker
for TV output. Possible parameters are facility for TV output. Possible parameters are
.B OFF, LOW, MED, HIGH .B OFF, LOW, MED, HIGH
or or
.B ADAPTIVE. .B ADAPTIVE.
By experience, By experience,
.B ADAPTIVE .B ADAPTIVE
yields the best results, hence it is the default. yields the best results.
.PP .PP
.I "2. 300 and 315/330 series specific information" .I "2. 300 and 315/330 series specific information"
.PP .PP
The 300 and 315/330 series feature two CRT controllers and very often come The 300 and 315/330 series very often come with a video bridge for
with a video bridge for controlling LCD and TV output. Hereinafter, the controlling LCD and TV output. Hereinafter, the term
term
.B CRT1 .B CRT1
refers to the VGA output of the chip, and refers to the VGA output of the chip, and
.B CRT2 .B CRT2
...@@ -204,7 +189,7 @@ The driver supports the following video bridges: ...@@ -204,7 +189,7 @@ The driver supports the following video bridges:
.B SiS301 .B SiS301
.B SiS301B(-DH) .B SiS301B(-DH)
.B SiS301C .B SiS301C
.B SiS301LV(X) .B SiS301LV
.B SiS302LV .B SiS302LV
.PP .PP
Instead of a video bridge, some machines have a Instead of a video bridge, some machines have a
...@@ -219,15 +204,13 @@ About TV output ...@@ -219,15 +204,13 @@ About TV output
.PP .PP
On the SiS301 and the Chrontel 7005, only resolutions up to 800x600 On the SiS301 and the Chrontel 7005, only resolutions up to 800x600
are supported. On all others, resolutions up to 1024x768 are supported. are supported. On all others, resolutions up to 1024x768 are supported.
However, due to a hardware bug, Xvideo might be distorted on SiS video
bridges if running NTSC or PAL-M at 1024x768.
.PP .PP
About XVideo support About XVideo support
.PP .PP
XVideo is supported on all chipsets of both families. However, there XVideo is supported on all chipsets of both families. However, there
are some differences in hardware features which cause limitations. are some differences in hardware features which cause limitations.
The 300 series as well as the SiS55x, M650, 651, 661FX, M661FX, and The 300 series as well as the SiS550, M650, 651, 661FX, M661FX,
741 support two video overlays. The SiS315/H/PRO, 650/740 and 330 support and 741 support two video overlays. The SiS315/H/PRO and 650/740 support
only one such overlay. On chips with two overlays, one overlay is used 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 for CRT1, the other for CRT2. On the other chipsets, the option
.B \*qXvOnCRT2\*q .B \*qXvOnCRT2\*q
...@@ -243,7 +226,7 @@ About dual-head support ...@@ -243,7 +226,7 @@ About dual-head support
.PP .PP
Dual head mode has some limitations as regards color depth and Dual head mode has some limitations as regards color depth and
resolution. Due to memory bandwidth limits, CRT1 might have a resolution. Due to memory bandwidth limits, CRT1 might have a
reduced maximum refresh rate if running on higher resolutions than reduced refresh rate if running on higher resolutions than
1280x1024. 1280x1024.
.PP .PP
Colordepth 8 is not supported when running in dual head mode. Colordepth 8 is not supported when running in dual head mode.
...@@ -265,19 +248,24 @@ and if this option is either unset or set to ...@@ -265,19 +248,24 @@ and if this option is either unset or set to
option is set to option is set to
.B true .B true
). If either only CRT1 or CRT2 is detected, the driver decides ). If either only CRT1 or CRT2 is detected, the driver decides
automatically. In Merged Framebuffer mode, this option is ignored. automatically.
Default: overlay is used on CRT1 Default: overlay is used on CRT1
.TP .TP
.BI "Option \*qForceCRT1\*q \*q" boolean \*q .BI "Option \*qForceCRT1\*q \*q" boolean \*q
Force CRT1 to be on of off. If a monitor is connected, it will be The BIOS detects VGA monitors connected to CRT1 at boot time
detected during server start. However, some old monitors are not and the X driver by default relies on the information passed
detected correctly. In such cases, you may set this option to by the BIOS. However, some old monitors are not detected
.B on correctly. If this is the case, or if you connected the VGA
in order to make the driver initialize CRT1 anyway. monitor after you booted the machine, you may set this
option to
.B true
in order to make the X driver ignore the
information from the BIOS and initialize CRT1 anyway.
If this option is set to If this option is set to
.B off .B false
, the driver will switch off CRT1. , the driver will switch
Default: auto-detect off CRT1 and thus save memory bandwidth.
Default: auto detect CRT1
.TP .TP
.BI "Option \*qForceCRT2Type\*q \*q" string \*q .BI "Option \*qForceCRT2Type\*q \*q" string \*q
Force display type to one of: Force display type to one of:
...@@ -289,8 +277,6 @@ Force display type to one of: ...@@ -289,8 +277,6 @@ Force display type to one of:
, ,
.B COMPOSITE .B COMPOSITE
, ,
.B SVIDEO+COMPOSITE
,
.B SCART .B SCART
, ,
.B LCD .B LCD
...@@ -298,54 +284,56 @@ Force display type to one of: ...@@ -298,54 +284,56 @@ Force display type to one of:
.B VGA .B VGA
; ;
.B NONE .B NONE
will disable CRT2. The SVIDEO, COMPOSITE, SVIDEO+COMPOSITE and SCART will disable CRT2. The SVIDEO, COMPOSITE and SCART parameters
parameters are for SiS video bridges only and can be used to force the are for SiS video bridges only and can be used to force the
driver to use a specific TV output connector (if present). driver to use a specific TV output connector (if present).
Default: auto detect. Default: auto detect.
.TP .TP
.BI "Option \*qCRT2Gamma\*q \*q" boolean \*q .BI "Option \*qPanelDelayCompensation\*q \*q" integer \*q
Enable or disable gamma correction for CRT2. Only supported This option is only for machines with a 300 series chipset
for SiS video bridges. Default: Gamma correction for CRT2 is on. and either a SiS301B-DH video bridge or a LVDS transmitter,
and a 315 series chipset with a SiS30xLV bridge.
Different LCD panels require different delay compensation
values. In most cases, the driver can autodetect this value.
However, due to bad BIOS design this might fail in rare
cases. If your LCD shows small horizontal waves, set the
parameter of this option on the 300 series first to
.B 4
,
.B 32
or
.B 24
and if the problem persists, try using other values between
4 and 60 in steps of 4. On the 315 series, any value can
be set.
.TP .TP
.BI "Option \*qTVStandard\*q \*q" string \*q .BI "Option \*qTVStandard\*q \*q" string \*q
Force the TV standard to either Force the TV standard to either
.B PAL .B PAL
or or
.B NTSC. .B NTSC.
On some machines with 630, 730 and the 315/330 series, On some machines with 630, 730 or the 315 series,
.B PALM .B PALM
,
.B PALN
and and
.B NTSCJ .B PALN
are supported as well. Default: BIOS setting. are supported as well. Default: BIOS setting.
.TP .TP
.BI "Option \*qTVXPosOffset\*q \*q" integer \*q .BI "Option \*qTVXPosOffset\*q \*q" integer \*q
This option allows tuning the horizontal position of the image for This option allows horizontal relocation the TV output.
TV output. The range is from -32 to 32. Not supported on the Chrontel The range is from -32 to 32. Not supported on the Chrontel
7019. Default: 0 7019.
.TP .TP
.BI "Option \*qTVYPosOffset\*q \*q" integer \*q .BI "Option \*qTVYPosOffset\*q \*q" integer \*q
This option allows tuning the vertical position of the image for TV This option allows vertical relocation the TV output.
output. The range is from -32 to 32. Not supported on the Chrontel The range is from -32 to 32. Not supported on the Chrontel
7019. Default: 0 7019.
.TP
.BI "Option \*qSISTVXScale\*q \*q" integer \*q
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
.TP
.BI "Option \*qSISTVYScale\*q \*q" integer \*q
This option selects the vertical zooming level for TV output in the
following modes: 640x480, 800x600. On the 315/330 series, also 720x480,
720x576 and 768x576. The range is from -4 to 3. Only supported on
SiS video bridges. Default: 0
.TP .TP
.BI "Option \*qCHTVOverscan\*q \*q" boolean \*q .BI "Option \*qCHTVOverscan\*q \*q" boolean \*q
On machines with a Chrontel TV encoder, this can be used to force the On machines with a Chrontel TV encoder, this can be used to
TV mode to overscan or underscan. force the TV mode to overscan or underscan.
.B on .B True
means overscan, means overscan,
.B off .B false
means underscan. means underscan.
Default: BIOS setting. Default: BIOS setting.
.TP .TP
...@@ -355,40 +343,57 @@ enables a super-overscan mode. This is only supported if ...@@ -355,40 +343,57 @@ enables a super-overscan mode. This is only supported if
the TV standard is PAL. Super overscan will produce an the TV standard is PAL. Super overscan will produce an
image on the TV which is larger than the viewable area. image on the TV which is larger than the viewable area.
.PP .PP
The driver supports many more options. Please see The driver supports many more TV related options. Please
http://www.winischhofer.net/linuxsisvga.shtml for see http://www.winischhofer.net/linuxsisvga.shtml for
more information. more information.
.PP .PP
.I "3. 300 series specific information" .I "3. 300 series specific information"
.PP .PP
DRI is supported on the 300 series only. On Linux, DRI requires the DRI is supported on the 300 series only. DRI requires
kernel's SiS framebuffer driver ( the kernel's SiS framebuffer driver (
.B sisfb .B sisfb
) and some other modules which come with either the kernel or __xservername__. ) and some other modules
.PP which come with either the kernel or XFree86.
Sisfb takes care of memory management for texture data. In order to .PP
prevent the X Server and sisfb from overwriting each other's data, Sisfb takes care of memory management for texture
sisfb reserves an amount of video memory for the X driver. This amount data. In order to prevent the X driver and sisfb from
can either be selected using sisfb's mem parameter, or auto-selected overwriting each others video memory, sisfb reserves
depending on the amount of total video RAM available. an amount of video memory for the X driver. This amount
.PP can either be selected using sisfb's mem parameter, or
Sisfb can be used for memory management only, or as a complete framebuffer auto-selected depending on the amount of total video RAM
driver. If you start sisfb with a valid mode (ie you gain a graphical console), available. However, the X driver needs to know about the
the X driver can communicate with sisfb and doesn't require any amount of RAM sisfb reserved. For this purpose, the
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
.TP .TP
.BI "Option \*qMaxXFBMem\*q \*q" integer \*q .BI "Option \*qMaxXFBMem\*q \*q" integer \*q
.PP .PP
exists. This option must be set to the same value as given to sisfb through exists.
its "mem" parameter, ie the amount of memory to use for X in kilobytes. .PP
.PP XFree 4.3.0 disabled SiS DRI support. Old information follows:
If you started sisfb without the mem argument, sisfb will reserve .PP
At the moment (2003), the SiS DRI driver is not
maintained, lacks support for memory swapping and
has a few bugs. If you intend to use DRI, I recommend
setting the total video memory in the BIOS to 64MB
in order to at least overcome the lack of memory
swap functions.
.PP
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 setting the
.B \*qMaxXFBMem\*q
option at all. The X driver will receive enough information
from sisfb in this case.
.PP
However, if you use sisfb for 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. In this case, you need to set
.B \*qMaxXFBMem\*q
to the same value as you gave sisfb with its mem
parameter. If you didn't specify any mem parameter,
sisfb will reserve
.TP .TP
12288KB if more than 16MB of total video RAM is available, 12288KB if more than 16MB of total video RAM is available,
.TP .TP
...@@ -396,20 +401,14 @@ If you started sisfb without the mem argument, sisfb will reserve ...@@ -396,20 +401,14 @@ If you started sisfb without the mem argument, sisfb will reserve
.TP .TP
4096KB in all other cases. 4096KB in all other cases.
.PP .PP
If you intend to use DRI, I recommend setting the total video memory in Then you need to specify any of these amounts as the
the BIOS to 64MB in order to at least overcome the lack of memory swap parameter for the
functions. .B \*qMaxXFBMem\*q
.TP option. The value is to be given without 'KB'.
.BI "Option \*qDRI\*q \*q" boolean \*q
This option allows enabling or disabling DRI. By default, DRI is on.
.TP
.BI "Option \*qAGPSize\*q \*q" integer \*q
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.
.SH "KNOWN BUGS" .SH "KNOWN BUGS"
none. none.
.SH "SEE ALSO" .SH "SEE ALSO"
__xservername__(__appmansuffix__), __xconfigfile__(__filemansuffix__), xorgconfig(__appmansuffix__), Xserver(__appmansuffix__), X(__miscmansuffix__) XFree86(1), XF86Config(__filemansuffix__), xf86config(1), Xserver(1), X(__miscmansuffix__)
.PP .PP
.B "http://www.winischhofer.net/linuxsisvga.shtml" .B "http://www.winischhofer.net/linuxsisvga.shtml"
for more information and updates for more information and updates
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
/* $XFree86$ */ /* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/sis/oem300.h,v 1.8 2003/06/19 13:28:01 twini Exp $ */
/* /*
* OEM Data for 300 series * OEM Data for 300 series
* *
* Copyright (C) 2001-2004 by Thomas Winischhofer, Vienna, Austria * Copyright 2002, 2003 by Thomas Winischhofer, Vienna, Austria
* *
* If distributed as part of the Linux kernel, the following license terms * If distributed as part of the linux kernel, the contents of this file
* apply: * is entirely covered by the GPL.
* *
* * This program is free software; you can redistribute it and/or modify * Otherwise, the following terms apply:
* * it under the terms of the GNU General Public License as published by
* * the Free Software Foundation; either version 2 of the named License,
* * or any later version.
* *
* * This program is distributed in the hope that it will be useful,
* * but WITHOUT ANY WARRANTY; without even the implied warranty of
* * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* * GNU General Public License for more details.
* *
* * You should have received a copy of the GNU General Public License
* * along with this program; if not, write to the Free Software
* * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA
* *
* Otherwise, the following license terms apply: * Permission to use, copy, modify, distribute, and sell this software and its
* documentation for any purpose is hereby granted without fee, provided that
* the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
* documentation, and that the name of the copyright holder not be used in
* advertising or publicity pertaining to distribution of the software without
* specific, written prior permission. The copyright holder makes no representations
* about the suitability of this software for any purpose. It is provided
* "as is" without express or implied warranty.
* *
* * Redistribution and use in source and binary forms, with or without * THE COPYRIGHT HOLDER DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
* * modification, are permitted provided that the following conditions * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
* * are met: * EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR ANY SPECIAL, INDIRECT OR
* * 1) Redistributions of source code must retain the above copyright * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
* * notice, this list of conditions and the following disclaimer. * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
* * 2) Redistributions in binary form must reproduce the above copyright * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* * notice, this list of conditions and the following disclaimer in the * PERFORMANCE OF THIS SOFTWARE.
* * documentation and/or other materials provided with the distribution.
* * 3) The name of the author may not be used to endorse or promote products
* * derived from this software without specific prior written permission.
* *
* * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESSED OR
* * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
* * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
* * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
* * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
* * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
* * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
* * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* *
* Author: Thomas Winischhofer <thomas@winischhofer.net> * Author: Thomas Winischhofer <thomas@winischhofer.net>
* *
* Based on code by Silicon Intergrated Systems
*
*/ */
const UCHAR SiS300_OEMTVDelay301[8][4] = const UCHAR SiS300_OEMTVDelay301