Xf86-video-sis
From ArchWiki
This page describes how to get SiS chipset graphical adapters working on Arch Linux:
Contents |
packages
You will need main xf86-video-sis package with driver and it's good idea to install sisctrl (gui tool for setting video modes) also:
$ pacman -Qs sis ... local/sisctrl 0.0.20051202-3 SiSCtrl is Display Control Panel for XFree86/X.org SiS driver local/xf86-video-sis 0.10.1-1 (xorg-video-drivers) X.org SiS video driver
So you can install those packages easily with pacman:
# pacman -Sy xf86-video-sis sisctrl
lspci
Output of lspci should look like this (depends on present model):
01:00.0 VGA compatible controller: Silicon Integrated Systems [SiS] 661/741/760 PCI/AGP or 662/761Gx PCIE VGA Display Adapter
modules & rc.conf
There are couple of modules related to SiS video cards:
$ modprobe -l | grep -i sis /lib/modules/2.6.28-ARCH/kernel/drivers/usb/misc/sisusbvga/sisusbvga.ko /lib/modules/2.6.28-ARCH/kernel/drivers/video/sis/sisfb.ko /lib/modules/2.6.28-ARCH/kernel/drivers/char/agp/sis-agp.ko /lib/modules/2.6.28-ARCH/kernel/drivers/gpu/drm/sis/sis.ko
You will probably need to load only sisfb (it will probably load the other sis modules as required by your hardware) as first and then the other modules. So the beginning of MODULES array in your /etc/rc.conf should look like this:
MODULES=( sisfb ... )
xorg.conf
Here are few most important sections from /etc/X11/xorg.conf
- Load some modules:
Section "Module" Load "dbe" Load "i2c" Load "bitmap" Load "ddc" Load "dri" Load "extmod" Load "freetype" Load "glx" Load "int10" Load "vbe" EndSection
- Device specification:
Section "Device" Identifier "Card0" Driver "sis" Card "** SiS (generic) [sis]" BusID "PCI:1:0:0" Option "UseFBDev" "true" Option "EnableSisCtrl" "yes" Option "ForceCRT1Type" "LCD" Option "ForceCRT2Type" "NONE" #Option "CRT2Detection" "true" #For me this worked better than forceing the detection. If you use this comment out the two Force lines above this. Option "CRT1Gamma" "on" Option "CRT2Gamma" "on" Option "Brightness" "0.000 0.000 0.000" Option "Contrast" "0.000 0.000 0.000" Option "CRT1Saturation" "0" Option "XvOnCRT2" "yes" Option "XvDefaultContrast" "2" Option "XvDefaultBrightness" "10" Option "XvDefaultHue" "0" Option "XvDefaultSaturation" "0" Option "XvDefaultDisableGfxLR" "no" Option "XvGamma" "off" EndSection
- Enable Direct Rendering:
Section "DRI" Mode 0666 EndSection
Dual head configuration
You need 2 device sections to enable dualhead mode. Sis specific options should be placed into master head device section.
Section "Monitor" Identifier "CRT1" ModelName "PANEL" Option "DPMS" VendorName "LCD" HorizSync 31-60 VertRefresh 40-60 EndSection Section "Monitor" Identifier "CRT2" ModelName "tv" Option "DPMS" VendorName "tv" EndSection Section "Screen" DefaultDepth 24 SubSection "Display" Depth 24 Modes "1024x768". EndSubSection Device "Device[0]" Identifier "Screen[0]" Monitor "CRT2" EndSection Section "Screen" DefaultDepth 24 SubSection "Display" Depth 24 Modes "1024x768". EndSubSection Device "Device[1]" Identifier "Screen[1]" Monitor "CRT1" EndSection Section "Device" BoardName "630" BusID "PCI:1:0:0" Driver "sis" Identifier "Device[1]" Screen 1 VendorName "SiS" EndSection Section "Device" BoardName "630" BusID "PCI:1:0:0" Driver "sis" Identifier "Device[0]" Screen 0 VendorName "SiS" Option "EnableSisCtrl" "true" EndSection Section "ServerLayout" Identifier "Layout[dual]" ... Option "Clone" "off" Screen "Screen[0]" Screen "Screen[1]" RightOf "Screen[0]" Option "Xinerama" "off" EndSection