MobiliX-Logo

[MobiliX][HOWTOs][Laptops][Hardware][Software][PDAs][Cell Phones][Misc][News][Mailing Lists]

NEW  `linux-laptop` mailing list NEW 

Graphic Chips in Laptops - Linux Status


 
Linux on the Road

Introduction

This overview is a side effect of my work with the Linux Mobile Guide .

The Linux status of the laptop models reported below, is changing and improving. Therefore, if a laptop is reported as "unsupported" you should give it a try. Why is this survey valuable though: To encourage people which want to buy a "working" stated machine (remember: no guarantees) and to collect technical information (what chips are used) about different models.

Compatibility Check

There are different ways how to detect, which graphic chip is used in your laptop:

  • From man SuperProbe : "SuperProbe is a a program that will attempt to determine the type of video hardware installed in an EISA/ISA/VLB-bus system by checking for known registers in various combinations at various locations (MicroChannel and PCI machines may not be fully supported; many work with the use of the -no_bios option)." WARNING: Read the manual carefully before using SuperProbe .
  • Another way to get information about the graphic controller is cat /proc/pci or lspci.
  • Currently I don't know a tool (besides fbset and the kernel), which provides information about the VESA VBE standard of the BIOS. At least VESA 2.0 is necessary if you want to use the framebuffer device. I didn't check SVGATextMode and svgalib for this purpose yet.

X Servers

GPLed X Servers

  • XFree86 Project:
    "XFree86 is a port of X11R6.3 that supports several Unix and Unix-like operating systems on Intel and other platforms."
  • Framebuffer Device:

    "The frame buffer device provides an abstraction for the graphics hardware. It represents the frame buffer of some video hardware and allows application software to access the graphics hardware through a well-defined interface, so the software doesn't need to know anything about the low-level (hardware register) stuff." from ../src/linux-2.2.11/Documentation/fb/framebuffer.txt N.N. . Framebuffer devices need a BIOS which supports VESA VBE 2.0:

    VESA September 1998 "VESA Bios Extension (VBE) Core Functions - Version 3: This standard defines a set of extensions to the VGA ROM BIOS services. These functions can be accessed under DOS through interrupt 10h, or be called directly by high performance 32-bit applications and operating systems other than DOS. These extensions also provide a hardware-independent mechanism to obtain vendor information, and serve as an extensible foundation for OEMs and VESA to facilitate rapid software support of emerging hardware technology without sacrificing backward compatibility."

    November 1994 "VESA BIOS (VBE) Standard 2.0: Standardizes a modular software interface for display and audio devices."

    October 1991 "VESA BIOS Extension (VBE) Standard 1.2: (includes version 1.0 and 1.1): This standard enables software to query the graphics board on its capabilities and then set the desired mode. Serves as a common software interface to Super VGA video adapters. VS911022 is version 1.2 of the VBE and has added support for direct color modes up to 8 bits per color per pixel."

    See also Linux-FBDev for latest news, mailing list, etc. And some framebuffer docs and a DOS tool LFB.EXE to get hardware information about the VESA version used in your machine.

  • GGI Project:
    "GGI stands for 'General Graphics Interface', and it is a project that aims to develop a reliable, stable and fast graphics system that works everywhere. We want to allow any program using GGI to run on any platform requiring at most a recompile." I'm not sure whether there is support for laptop graphic chips yet.
  • Precisioninsight:
    "Precision Insight specializes in the creation of OpenGL (1) compatible Direct Rendering support for 3D graphics hardware within the industry standard XFree86 X server. Ongoing projects include enhancements to PI's Direct Rendering Infrastructure (DRI) to support new graphics hardware, and the creation of associated 2D and 3D graphics and video drivers. Precision Insight's products are distributed as part of the XFree86 X server, directly by PI's OEM's, or via PI's ftp site or its mirrors." Precisioninsight developed the Linux X server for Neomagic NM20xx.

Commercial X Servers


Call for Help

If you like to contribute your experiences with your graphic chip and Linux (whether good or bad), I would gladly appreciate your help.

- Werner Heuser - <wehe@mobilix.org>

Graphic Chips

Note: The following survey needs some more improvements, e.g. version of XFree86, resolutions, better status report, benchmark, 3D and acceleration features.

Survey

LaptopXFree86Frame BufferGGIXinsideSciTechTextContributor / Source
ATI Rage Mobility M
IBM ThinkPad i1460works with patch     George Staikos
ATI Rage Mobility M3/128
DELL Inspiron 5000eworks with patch, fully accelerated support is provided at 8, 16, and 24 bits per pixel. This LGD also supports Xi Graphic's Dual View feature in the Single Logical Screen mode.      George Staikos
ATI Rage PRO LT, see annotations
ASUS P6300 (note: different graphic cards reported)3.3.5 should work, XF86_MACH64?yes 5.0 (plus bugfix) works  Christian Czezatke
ASUS N.N.specify vga=0x0305 in lilo.conf, and use XF86_FBDev, XF86_MACH64?yes     
DELL Inspiron 7000works, XF86_MACH64?     Linux DELL Inspiron
Sager 8550specify vga=0x0305 in lilo.conf, and use XF86_FBDevyes works   
ATI 3D Rage PRO LT, see annotations
Apple Powerbook G3 (Wallstreet) works    Alvin Brattli
SIEMENS Scenic Mobile 750 AGBworks with some problems, probably due to old XFree86      
Cirrus Logic 1MB GD7543
Texas Instruments 570CD (now Acer)works with some problems "I've heard from others who have this chip in other hardware, and it appears to work there. At one time there was a hacked XFree that worked for some. Maybe if it came with more video ram, and if you insisted on an active matrix display, it would work. But not with 1MB video RAM and DSTN display."   works  <S. Keeling>
Lynx video card by Silicon Motion
ASUS L7300not supportedyes vga=791 in lilo.conf    N.N.
Gatewayshould work with 3.3.6     <Gregory Wagner>
Neomagic NM2070
HP OmniBook 800worksdoesn't work, because BIOS supports only VBE 1.3 works 100x37, see Other Resources belowown research
Neomagic MagicGraph 128XD
ASUS P6300 (note: different graphic cards reported)1024x768@16bpp    100x37, see Other Resources below, VESA FB console worksChristian Czezatke
Neomagic G5 AGP graphic card w 2.5 MB SGRAM
Chicony MP-993 Vega      <Kaare Rasmussen>
S3 Savage/IX
announced for December 1999, see CT 18/1999 p. 25     100x37, see Other Resources belowCT 18/1999 p. 25
S3 Savage/MX
announced for December 1999, see CT 18/1999 p. 25      CT 18/1999 p. 25
Trident CyberBlade i1
COMPAQ Presario 1600XL155FB worksX doesn't work    X on COMPAQ Presario 1600XL155

Annotations

From Adrian D. Jensen <adjensen@notes.west.raytheon.com>:

The "LT" is the "light" version of ATI's Rage Pro chipset specifically for notebooks computers. It is very similar to the ATI Rage Pro 3D chips found in desktop machines (reduced power/footprint). As far as the Rage Pro 3D chipset in a laptop, I think thats a marketing mistake, they probably meant to say Rage Lt Pro or Rage Mobility. Rage Mobility is the latest laptop chip from ATI and, again, is very similar to the Rage Lt Pro (increased 3D capability/reduced power).

The Rage Lt Pro chipset is supported in the latest ATI (Mach64-3.3.5) X server and there are many other people successfully using the FBDev server. I think this is also true for the Rage Mobility chipset, anyone already have this? I personally have a Quantex I-1410 with the Rage Lt Pro w/8MB and have no major problems running at 1024x768x8/15/16/24. There are a couple of caveats though:

First, for some people (myself included), there is a problem with running a FB console and the Mach64 server. Starting with a FB console (say 128x48 col/row in 1024x768x16, i.e. vga=791) gives you a nice, large text console and a pretty penguin on boot up. However, starting the X server, there is signifigant flicker in the image. This only occurs if you use a FB console instead of a standard text console.

Second, many people are using a FB console and the FBDev server. This works fine however, the FBDev server is much slower than the Mach64 server (I've heard the Mach64 is anywhere from 2-4x faster).

Either way, these problems only exist if you trying to run the X server from a FB console. Off a standard text console, the Mach64 server works beautifully and correctly IDs the LCD size and interface speed.

I don't know any of these notebook models specifically but I highly recommend the ATI Rage chipset as it is fairly well supported, typically contains 4 or 8MB of ram (plenty for virtually anything), is very fast, and it can drive an external monitor to 1600x1200 at 75Hz.

Graphic Mode - X

Resuming X

"Many (most?) BIOSes fail to save and restore display controller chip registers, and X has no protocol to be notified of resume events, so on many systems suspend/resume is more-or-less incompatible with X." Linux Laptops has created a fix for this problem.

Modeline Utilities

XF86Setup

From the XFree86-Video-Timings-HOWTO by Eric S. Raymond:

"Starting with XFree86 3.2, XFree86 provides an XF86Setup(1) program that makes it easy to generate a working monitor mode interactively, without messing with video timing number directly. So you shouldn't actually need to calculate a base monitor mode in most cases. Unfortunately, XF86Setup(1) has some limitations; it only knows about standard video modes up to 1280x1024. If you have a very high- performance monitor capable of 1600x1200 or more you will still have to compute your base monitor mode yourself."

xvidtune

From the XFree86-Video-Timings-HOWTO by Eric S. Raymond:

"Recent versions of XFree86 provide a tool called xvidtune(1) which you will probably find quite useful for testing and tuning monitor modes. It begins with a gruesome warning about the possible consequences of mistakes with it. If you pay careful attention to this document and learn what is behind the pretty numbers in xvidtune's boxes, you will become able to use xvidtune effectively and with confidence."

modeline

"modeline is a small utility used to calculate modelines for use with X11, SVGAlib and VESA FrameBuffer." AFAIK it's main advantages are the command line interface. You don't have to invoke X to calculate a modeline. And framebuffer support.

I packaged modeline for Debian/GNU Linux. It's my first package and not included into official Debian yet. Get it at my software page.

Disclaimer: Use this packages at your own risk. Currently I don't have time to answer questions.

KVideoGen

KVideogen by Rik Hemsley <rik@kde.org> is a small utility that will help you to write modelines for XFree86, giving you the best modes you can get from your graphics subsystem. The calculations are done by code originally written by Rumi Szabolcs.

fbset

By Nathan Myers <ncm@linuxlaptops.com> from Linux Laptops: You may use fbset to discover the manufacturer's recommended "modeline" timing on laptop LCDs? It's pretty simple:

  • Build framebuffer support into the kernel;
  • Add video=vesa, and vga=0x317 (for 1024x768) boot arguments;
  • Use fbset -x to extract a Modeline;
  • Edit the resulting Modeline into your XF86Config file;
  • Adjust the XF86Config file's HorizSync and VertRefresh ranges to include the values that fbset reports.

read-edid

read-edid gets the specs of a monitor from the hardware, and automates making XFree86 modelines. It only works with recent video cards (with the EDID VBE extension) and monitors (with DDC) on PCs (x86).

Screensaver

xscreensaver

"The purpose of xscreensaver is to display pretty pictures on your screen when it is not in use, in keeping with the philosophy that unattended monitors should always be doing something interesting, just like they do in the movies."

"The benefit that this program has over the combination of the xlock and xautolock programs is the ease with which new graphics hacks can be installed: you don't need to recompile this program to add a new display mode, you just change some resource settings. Any program which can be invoked in such a way that it draws on the root window of the screen can now be used as a screensaver without modification. The programs that are being run as screensavers don't need to have any special knowledge about what it means to be a screensaver."

Other Resources

"From Linux Hardware by Christopher Browne:

AGP - Accelerated Graphics Port: Intel's new scheme that provides a graphics "bus" separate from the usual PCI bus so that graphics can operate concurrently without consuming normal memory bandwidth. This unfortunately comes at the cost of allowing the graphics card to override the CPU, which may slow things down. It does not support multiple cards, thus a multiheaded display will require at least one non-AGP card."

Text Mode - SVGA

SVGATextMode

"SVGATextMode allows the screen mode of the Linux console to be controlled in detail. This allows more characters on screen, more stable text, less characters on screen, less stable text, etc. also, on badly designed hardware, you could sometimes achieve a melted monitor.

Extra fonts are required to work fully, though without them useful effects can still be achieved."

svgalib

"Low-level graphics library that provides VGA and SVGA modes in a console. It is not intended as an alternative to X for apps, but rather a set of tools for things like VGA games, image viewing in modes that X cannot support, etc."

Screensaver

setterm

From man setterm : setterm writes to standard output a character string that will invoke the specified terminal capabilities.

cmatrix

CMatrix - shows a scrolling 'Matrix' like screen in Linux (curses based). Inspired by the movie Matrix.

vlock

"vlock either locks the current terminal (which may be any kind of terminal, local or remote), or locks the entire virtual console system, completely disabling all console access. vlock gives up these locks when either the password of the user who started vlock or the root password is typed."

lockvc

"lockVC is a console-locking-program combined with a starfield screensaver. Executing LOCKVC on a virtual console brings up a starfield that starts to rotate around all three axes."

"All virtual consoles get locked, i.e. you cannot change to another VC and you can't stop the program by pressing any key-combos. You can only exit the program by entering your system-password. Root's password will also terminate lockvc."

scrsavd

Screen saver daemon by Chuck <chuckjr@sinclair.net> .

aalib

ASCII art library.

Other Resources

  • Documentation of lilo for setting the parameter vga=N.N. in /etc/lilo.conf
  • ../src/linux/Documentation/svga.txt .
  • Appendix of the Linux Mobile Guide by Cedric Adjih < cedric.adjih@inria.fr > about using a better text mode 100x37 for the Neomagic NM20xx chips.
  • Keyboard-And-Console-HOWTO .
  • svgalib-bin: SVGA display utilities.
  • "...a developer's kit to support video hardware decoding for Linux on their Rage 128 and Rage 128 Pro chips. ...confirms ATI's pursuit to become 'the Linux community's Number One graphics vendor'." COMPLETE STORY.

External Projectors

There are several different methods to activate support for an external monitor (or beamer, or overhead display): as a BIOS option or during runtime with a keystroke e.g. <Fn>+<F4> (for my HP OmniBook 800 it's <Fn>+<Print>).

Note: You should turn on the projector first and wait until it's fully initialized before you turn the laptop on. If you have to toggle the signal at the VGA port (remember the keystroke above!) give the projector some seconds to catch the new signal. In other words don't toggle to fast.

For NeoMagic chipsets you have to edit /etc/XF86Config by configuring intern_disp and extern_disp. see /usr/X11/lib/X11/doc/README.neo (SuSE) or /usr/doc/xserver-common/README.neo.gz (Debian) for details:

3.  Technical Notes
...
o  Enable both internal "intern_disp" and external "extern_disp"
 options to get simultaneous panel/CRT support.
...

If you can't get this to work with XFree, try a demo version of the commercial X servers mentioned above.

If you have lost the specs of your monitor you may try: Monitorworld.

Survey of Beamers / Projectors

ManufacturerModelAnnotations
3MMP8620, MP8640, MP8730SVGA/XGA, S-Video
COMPAQMP 1600600 ANSI Lumen, 1024x768, weight < 2kg
Epson71001024x768
HitachiCP-X960XGA, S-video, USB, 1024x768
LG ElectronicsLP-XG2XGA projector, compatible with the usual TV formats
Sharp  
SONYVPL-PX1XGA, 1024x768, 1000 ANSI Lumen
ToshibaTY-G3 
ToshibaMediastar TLP 510/511VGA-, SVHS- Video IN and OUT, NTSC, PAL and SECAM IN, 600 ANSI Lumen, 1280x1024
ToshibaMediastar TLP 410/411VGA-, SVHS- Video IN and OUT, NTSC, PAL and SECAM IN, 500 ANSI Lumen, 1024x768

Credits

Thanks to the contributors mentioned above, the members of comp.os.linux.portable, the Linux-Laptop and Debian-Laptop mailing lists. And to:

  • Thomas Traber <traber@inetmail.de>
  • Nathan Myers <ncm@linuxlaptops.com> from Linux Laptops
  • Adrian D. Jensen <adjensen@notes.west.raytheon.com>

SURVEY... Do you have a moment? Help us understand who visits this site by taking a very short survey...

Print Version · PALM-AportisDoc · WAP · WAP PreView
About · Contact · Disclaimer · Privacy Statement · Site Map

    powered by FreeFind

start Fri Aug 20 1999 last change Wed Jan 17 2001
copyright © Werner Heuser <wehe@mobilix.org> 2001 http://mobilix.org/graphic_linux.html

Xtops.DE - Tux gets mobile!
Xtops.DE - Laptops und PDAs mit Linux