r23 - 23 Apr 2007 - 17:12:24 - AndrewZYou are here: TWiki >  Ltsp Web  > VideoCards

Video cards

Specific card settings

Nvidia

nVidia for LTSP-4.1.1

Here's a method for adding the proprietary nvidia modules to the LTSP-4.1.1 system: NvidiaLtsp411

nVidia for LTSP-4.2 update-2

Peter Ehrenberg has created a page and packages for using the nVidia binary module with LTSP-4.2 update-2.

sis cards

The SiS driver requires the glx module to be loaded. If you have workstation ws002 that has a sis card, then you would specify this:
[ws002]
  X4_MODULE_01 = glx

S3 and S3Virge cards

The support for S3 and S3Virge cards may still be a problem in XFree86 4.x and X.org, so LTSP provides the older XFree86 3.3.6 versions of the drivers, which work quite well on those older cards. Try the Xorg s3virge driver first.

If you have a workstation that has an S3 or S3Virge card, you would specify the older driver like this:

[ws003]
  XSERVER = XF86_S3   (or XF86_S3V for the S3Virge card)
If the driver name starts with XF86_, that means it will use the older 3.3.6 version of XFree86.

If you have an S3 Trio video card, these settings work well:

[ws003]
  XSERVER = XF86_S3
  X_VIDEORAM = 4096
  X_COLOR_DEPTH = 8
  X_MODE_0 = 800x600 40 800 840 968 1056 600 601 605 628 +hsync +vsync

That will set video RAM to 4mb, color depth to 256 colors, and display mode to 800x600. Higher color depths were causing the screen to flicker, but this one sacrifices a few nice colors for that.

Via embedded graphics

Via Unichrome graphics as included in their mini-itx systems seem to have problems with autoconfiguration. They do not autodetect and the via driver must be explicitly specified. They will work without specifying the driver, but will use the much slower vesa driver.

If you have a workstation based around a Via mini-itx motherboard, you would specify the via driver like this:

[ws003]
  XSERVER = via

You may need to specify the monitor's refresh rates explicitly as well, as described in the next section of this page.

While starting X with the via driver, you may see errors indicating that certain symbols are not defined. These can be ignored and will not effect functionality.

Via embedded DVI Interface

Starting with Xorg 6.9.x, detecting a DVI interface is unreliable for the LTSP Term 170. The following lts.conf option forces X to use the DVI interface:

[ws003]
  X_DEVICE_OPTION_02 = "ForcePanel true"

This applies to LTSP versions >= 4.2

If you are running LTSP installed from Ubuntu or Debian packages beginning with Ubuntu Edgy or Debian Etch, create a custom xorg.conf for a DVI workstation adding the following to lts.conf:

[ws003]
  XF86CONFIG_FILE    = /etc/X11/xorg.conf.ws003

xorg.conf.ws003 Monitor section is where you add the ForcePanel? option:

Section "Monitor"
        Identifier      "Generic Monitor"
        Option          "DPMS"
        HorizSync       40-75                   # Set this to match your monitor's specs
        VertRefresh     50-85                   # Set this to match your monitor's specs
        Option          "PanelSize" "1280x1024" # Useful if your monitor's maximum
                                                # resolution is greater than the X video
                                                # resolution you are running
        Option          "ForcePanel" "true"     # Forces use of DVI interface
EndSection

Geode GX1

Ok guys, I finally sat down this weekend, and decided to see what I could do about the Xserver for the Geode GX1 chipset in the Jammin-125.

I found the old driver that Alan Hourihane wrote back in 2002, and I compared it, almost line for line with the latest driver in Xorg 6.8.2.

The old driver was called "geode", but they changed the name when they added support for the GX2 chipset. The driver is now called "nsc" which stands for "National Semi-Conductor".

In the latest driver, all of the code to handle the GX2 is implemented in a separate file, so there's a clear distinction between the GX1 code and the GX2 code.

Anyway, I compared line for line, the GX1 driver code, and I found no significant differences. There's some new options, to enable/disable certain features, but nothing that should affect the stability of the driver.

So, I started testing the nsc driver. I used x11perf, and I found that the driver kept failing. After several tests, I found that it was failing in the same place, running the same test. I saw in the /var/log/daemon file that GDM was having a problem contacting the Xserver. The actual message was:

  
 localhost gdm[4960]: Ping to ws251.ltsp:0 failed, whacking display!

I thought it was because the Xserver was crashing, and GDM could no longer Ping the Xserver, so it reported the error.

Turns out that's not the case.

There's an operation in x11perf that takes 72 seconds to complete on the GX1 chipset. GDM sends a ping (not an icmp ping, it's actually a GetFontMetrics? request). If GDM doesn't get a response within 15 seconds, it assumes the Xserver has dissappeared, so it stops managing the session. Gives the screen the appearance that the Xserver has locked up.

SO, if I run the Xserver standalone, without querying the display manager, and then I run x11perf from my desktop with a '-display ws251:0.0', it will run x11perf, displaying on the GX1 chipset, it runs the entire test to completion. No crashing, no hanging.

I ran the test several more times, and on the 3rd attempt, the computer locked up. I'm thinking this is heat related, because it's hot in my office, and i've really been punishing this GX1 chipset. I tried rebooting the client, and I couldn't get X to run on it. I turned it off, and left it for about 2 hours, and then when I went back to test it, it performed fine again. Like I said, looks like a thermal problem, but i'm not too worried about it. In a normal office setting, nobody is going to push the chipset as hard as I did.

I need to modify the vidlist file to cause the 'nsc' driver to be loaded, instead of the non-existant 'geode' driver. That'll be out in the next update of LTSP. Until then, people just need to add the following line to their lts.conf file:

   XSERVER = nsc

OR, they could modify the vidlist file and change:

  1078:0104       geode

to read:

  1078:0104       nsc

Then, autodetection will cause the proper driver to be loaded.

-- JimMcQuillan - 26 Jun 2005

Xinerama / TwinView?

LTSP 4.2 introduces multiple monitor support, example configuration discussed in the mailing list archive:

http://www.mail-archive.com/ltsp-discuss@lists.sourceforge.net/msg26519.html

With multiple monitors, keyboards, mice, and sound devices it is possible to setup a Multi-Seat environment in which multiple users can share one terminal.

Setting resolution

LTSP uses a default resolution of 1024 x 768. You can override this by adding entries to your /opt/ltsp/i386/etc/lts.conf file.

You can specify either a full modeline (like the example for ws008) or a simply resolution. A useful tool to generate these modelines can be found at http://koala.ilog.fr/cgi-bin/nph-colas-modelines.

Another useful tool to generate a modeline can be found at http://xtiming.sourceforge.net/cgi-bin/xtiming.pl

  [ws001]
    X_MODE_0  =  800x600

  [ws008]
    #
    #  ATI Card with ViewSonic P815 21" monitor running at 1800x1440
    #
    X_MODE_0       = 1800x1440 250 1800 1896 2088 2392 1440 1441 1444 1490 +HSync +VSync
    X_HORZSYNC     = 30-115
    X_VERTREFRESH  = 50-160

  [ws009]
    #
    # 17" flat panel.  Had to add the X_HORZSYNC, otherwise it would do only 1280x960
    #
    X_MODE_0   = 1280x1024
    X_HORZSYNC = "60-70"

You can specify up to 3 resolutions, using X_MODE_0, X_MODE_1, and X_MODE_2. Then, you can cycle between the resolutions, using the Ctrl-Alt-KP+ key. For example:

  [ws001]
    X_MODE_0 = 800x600
    X_MODE_1 = 640x480
    X_MODE_2 = 1024x768

Video drivers

Most PCI video cards work very well with LTSP. Some, however, are a bit of a problem.

The PCI video cards can be autodetected during the boot process, so there is usually nothing that needs to be set. Sometimes, you may want to force a certain Xserver to be used. You do this with the XSERVER parameter in the lts.conf file.

For instance:

  [ws001]
    XSERVER = ati
The above example will for the ati module to be loaded by the Xserver.

figuring out which Xserver module to load depends on whether you want to use the X.org Foundations Xserver, or the older XFree86 3.3.6 Xserver.

X.org

The X.org Xserver is a modular Xserver that has a generic core, and many loadable modules.

The current list of X.org driver modules:

  • apm
  • ark
  • ati
  • atimisc
  • chips
  • cirrus
  • cyrix
  • dummy
  • fbdev
  • geode
  • glint
  • i128
  • i740
  • i810
  • mga
  • neomagic
  • nsc
  • nv
  • r128
  • radeon
  • rendition
  • s3
  • s3virge
  • savage
  • siliconmotion
  • sis
  • tdfx
  • tga
  • trident
  • tseng
  • vesa
  • vga
  • via
  • vmware

XFree86 3.3.6

If you specify a value for the XSERVER parameter that starts with XF86_, that will cause the terminal to use a 3.3.6 XFree86 Xserver. The 3.3.6 Xservers are in the /opt/ltsp/i386/usr/X11R6/bin.

The XFree86 Xserver is many completely separate Xserver binaries.

The current list of XFree86 3.3.6 Xservers:

  • XF86_3DLabs
  • XF86_8514
  • XF86_AGX
  • XF86_I128
  • XF86_Mach32
  • XF86_Mach64
  • XF86_Mach8
  • XF86_Mono
  • XF86_P9000
  • XF86_S3
  • XF86_S3V
  • XF86_SVGA
  • XF86_VGA16
  • XF86_W32

How much video memory do I need?

(or - what is the maximum resolution I can get on my xMb card?)

To calculate the video memory required you have to multiply the horizontal resolution, vertical resolution and colour depth and divide it by 8.

memory required (in bytes) = horisontal resolution * vertical resolution * depth (in bits) / 8

for example:

1024 * 768 * 24 / 8 = 2,359,296
1024 * 768 * 16 / 8 = 1,572,864

thanks to Kalev Lember

Crashes with i810

You may get a hard crash (X dies, the console shows, and everything is frozen) visiting Flash-heavy sites such as nadaguides.com or hertz.com. It happens with LTSP 4.2u4 and certain i810 video cards---even though the terminal has a lot of RAM (>256MB).

Part of the solution is to increase video memory with X_VIDEORAM =8192. On my Dell OptiPlex? GX110 systems, this prevents crashes on nadaguides.com, but hertz.com still crashes. However, my Dell OptiPlex? GX260 terminals don't crash on either site.

-- AndrewZ - 23 Apr 2007

X Servers

  • LTSP 4.1 ships with XFree 3.3.6 and X.org ??
  • LTSP 4.2 ships with X.org 6.9
Edit | Attach | Printable | Raw View | Backlinks: Web, All Webs | History: r23 < r22 < r21 < r20 < r19 | More topic actions
 
Powered by TWiki
This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback