by August 10, 2001 0 comments



Another release of Linux and yet the same question, “How do I configure my SiS 6205/6215 under Linux?” One might think that the problem will be solved with every latest and greatest release of a Linux distribution. But unfortunately that’s not the case.

Q. So what’s the problem this time around?

Ans. The “SiS” driver that ships with XFree86 4.0.3 currently supports only the following 
SiS chipsets: 5597, 5598, 530, 6326, 300, 630 and 540.
If you have tried configuring X Window on PCQ Linux/Red Hat Linux 7.1 using Xconfigurator, the configuration would have failed. Running “X -probeonly” would provide more details.
$ X -probeonly XFree86 Version 4.0.3 / X Window System
(protocol Version 11, revision 0, vendor release 6400)
Release Date: 16 March 2001
If the server is older than 6-12 months, or if your card is newer than the above date, look for a newer version before reporting problems. (See www.XFree86.Org/FAQ)
Operating System: Linux 2.2.17-8smp i686 [ELF]
[…]
(II) SIS: driver for SiS chipsets: SIS5597, SIS5598, SIS530, SIS6326, SIS300, SIS630, SIS540
(–) Assigning device section with no busID to primary device
(EE) No devices detected.

The probe messages indicate that the SiS driver supports only SiS5597, SiS5598, SiS530, SiS6326, SiS300, SiS630 and SiS540. The X server hence aborts with a “No devices detected” message as the SiS6205 and SiS6215 are not supported.

Q. But XFree86 3.3.6 shipped with Red Hat Linux 6.2 supports the Sis6205/6215 chipsets!

Ans. XFree86 4.x, which ships with Red Hat/PCQ Linux 7.1 does not have drivers for most legacy chipsets which are currently not in production as they have to be ported from X 3.3.6 to X4. According to the X developers, this is intentional. The developers are instead, concentrating on providing better support for newer chipsets.

Q. Does that mean that I have to go back to XFree86 3.3.6?

Ans. No. One of the popular methods of getting unsupported video cards to work with X was to enable kernel frame buffer mode and to use the “FBdev” X server. This requires that the VGA card be VESA standards compliant. VESA is an industry standard for video chipsets.

This too is now redundant. XFree86 4.0.x and later, comes with a “vesa” driver which will work with all VESA compliant chipsets. Don’t confuse the XFree86 “vesa” driver with the kernel-based VESA frame buffer (vesafb). Both provide similar functionality but at different levels. Fortunately, the SiS 6205 and 6215 are VESA compliant.

Q. What can the VESA driver do?

Ans. “Vesa” is an XFree86 driver for generic VESA video cards. It can drive most VESA-compatible video cards, but only makes use of the basic standard VESA core that is common to these cards. The driver supports color depths of 8, 15, 16, and 24 bits per pixel.

Q. So how can I configure my X Window system to use the “vesa” driver instead of “sis”?

Ans. “Xconfigurator” which is the default tool for configuring X under Red Hat Linux, does not have the provision for choosing drivers. So we handle the task in two steps:

Step1. Configure the SiS card as if it were supported by skipping all tests using
Xconfigurator.
Step2. Manually changing the driver from “sis” to “vesa” in /etc/X11/XF86Config-4.

To configure SiS 6205/6215:

1. Run “Xconfigurator”
2. Choose SiS SG86C205 or SiS SG86C215 depending on your setup.
3. Choose monitor if not auto detected.
4. In the “Screen Configuration” page, choose “Don’t Probe”.
5. Choose the correct amount of video memory from the list.
6. Choose “No Clockchip Setting” for the Clockchip Configuration.
7. Select the following Video Modes – “1024×768“, “800×600” and “640×480” all at 16 bits.
8. Skip “Xconfigurator will now start X to test your configuration”. Do not try to “test” your X configuration. It will not work.

Once you are back at the shell prompt, edit the file /etc/X11/XF86Config-4 using an editor. Scroll down to the following block:

Section “Device”
Identifier “SiS SG86C215”
Driver “sis”
BoardName “Unknown”
# This is a cheap version of 86c205. I am not sure if acceleration works
# Option “no_accel” # Use this if acceleration is causing problems
# Option “no_BitBlt” # Use this if acceleration is causing problems
# Option “fifo_moderate”
# Option “fifo_conserv”
# Option “fifo_aggresive”
EndSection
Change it to look like this:
Section “Device”
Identifier “SiS SG86C215”
# Change “sis” to “vesa”
Driver “vesa”
# Add the VideoRAM option – 1024 for 1MB and 2048 for 2MB.
VideoRAM 2048
BoardName “Unknown”
EndSection

Readers please note that the X4 uses “/etc/X11/XF86Config-4” and not “/etc/X11/XF86 Config” for its configuration.
Try starting X with the command “startx”. Use “CTRL+ALT+Keypad Plus” and “CTRL+ALT+Keypad Minus” to change monitor resolutions.

This is a generic solution for most chipsets for which the X developers “forgot” to port drivers from X 3.3.6 to X4 and will work with all VESA compliant video cards.

Resources

VESA Standards Page: www.vesa.org
SiS Driver Status page: www.xfree86.org/4.1.0/Status30.html#30

Shanker Balan is a technology research consultant with Exocore Consulting
www.exocore.com

No Comments so far

Jump into a conversation

No Comments Yet!

You can be the one to start a conversation.

Your data will be safe!Your e-mail address will not be published. Also other data will not be shared with third person.