Debian GNU/Linux

Debian GNU/Linux on the Dell Latitude XPi D133ST

Last Modified 2003/09/05 06:17:59 Graham.Williams@csiro.au


DISCLAIMER: The information on this page is provided as-is. Use it at your own risk.

Visit the GNU/Linux Survival Guide, a GNU/Linux cookbook.

PLEASE NOTE: The information in this page is out of date. I now have a new Dell and haven't installed GNU/Linux on the older Dell for a while, although when time permits I plan to. In particular the XWindows driver for the Neo Magic chips is part of the XFree86 distribution as of version 3.3.3. Information for my new Dell is available from dlcpid300xt.html

This page refers to the Dell Lattitude XPi P133ST which has a NeoMagic NM2070 chipset. My setup has 24Megs of memory and a 1.2 GByte hard disk, using a PCMCIA modem card with PPP.

The Hardware

I partitioned my 1.2GB hard disk into two equal partitions, the first for Windows95, the second for Linux. Windows95 offers less functionality, is slower, has more bugs, and consumes considerably more disk space than my Linux installation which includes X, TeX, and much more!

Installation

I used the Debian GNU/Linux distribution, originally installing Debian GNU/Linux 1.1 (kernel version 2.x.y) with individual package updates as needed. Newer versions of Debian GNU/Linux are now available. Debian is my choice because of its well thought out packaging system and the large community of active supporters. Under Debian you can now even install Red Hat rpm packages with little effort! I didn't need any Dell specific knowledge to install Debian. People speak just as fondly of Red Hat - the choice is yours.

X Windows

New Dell laptops and many other laptops from other manufacturers now use NeoMagic Graphic Chips. Checking NeoMagic's web pages you will see that "NeoMagic does not support Unix drivers, and cannot provide device/programming information to end-users." They are protecting their intellectual property rights. So, for the NeoMagic chipset there was no SVGA driver (800x600x8bpp 256 colors) in XFree86 prior to version 3.3.3---only the simple VGA16 driver (800x600x4bpp 16 colours) could be used. I have not yet tried this version of XFree86 on the XPi but it works just fine for me on the CPi. There was a RedHat rpm with a driver for this chip with XFree86 versions prior to 3.3.3, available from ftp://ftp.redhat.com/pub/XBF/. A commercial (approximately US$250) X11 server from Xi Graphics does provide a NeoMagic driver for Linux, with many positive reports.

cLive is installing RedHat6 on this machine and aiming to get X working. During setup he selected Neomagic (Laptop) and LCD 800x600. It sort of worked - the fonts/graphics seemed very grainy, and he could't open a terminal window (the window would just hang - he couldn't type anything).

XFree86 VGA16 server, Kernel 2.x.y

If you are running an older version of XFree86 and of the kernel, the following may be of interest.

The VGA16 server from XFree86 (version 3.1) works with the NM2070, giving just 16 colours. A "trick" is required to get the server to use the whole screen (800x600) rather than the 640x480 default or the split screen effect. This requires putting the monitor into 800x600 mode on bootup. A consequence of this is that the normal console is turned off, and you will need to go directly into XWindows, via xdm. This is not usually a problem.

Christian Kaske suggested, 27 Sep 2002, that using the Neomagic 2070 xserver provided with XFree86 v 4.x works fine with both 8bit and 16bit on 640x480 and 800x600 but causes corrupted screen (vanishing window content etc.) in all x-applications if used with default settings. To fix the problem append both Xaa-options in the screen-section of the x86config:

  Option "XaaNoPixmapCache"
  Option "XaaNoScreenToScreenCopy"
No further hacks or tricks were required on the from SuSE-Linux distribution 7.2 on a Dell Latitude xps p133st Bios rev. 11.

Oskar reported that the simplest way to turn on the 800x600 mode is to use LILO and to change "vga=normal" to "vga=770" in /etc/lilo.conf (or to add it there if not present as in Red Hat Linux). This works for me and is how I run my VGA16 server at present. You can also create alternative lilo startups so that you can choose to go with xdm or not with an "append=4" or "append=5" (an init 4 or 5 will start xdm depending on your setup---Red Hat uses init 5 for xdm).

Yoshiro Mihira supplied the following kernel patch to switch to 800x600 mode (notice that 770 is the decimal equivalent of 0x0302). The modification is to the file /usr/src/linux/arch/i386/boot/video.S in the Linux kernel.

From:
    mode_set:
         mov     bx,ax
         cmp     ah,#0xff
         jz      setalias

To:
    mode_set:
         mov     ax,#0x0302             <- Insert this line
         mov     bx,ax
         cmp     ah,#0xff
         jz      setalias

Jason Burrell reported that the Compaq Presario 1020 notebook (which also uses a NeoMagic NM2070 chip) requires no LILO switches nor kernel patches.

Bob Bownes reported that the the NEC Versa 4200 also uses the NeoMagic and no hacks are required to get it to run in 800x600x4bpp mode.

External Monitors

I did not have a lot of success (nor tried very hard) to get things working with an external monitor. Oliver Spiess also tried without success, with both XFree and AcceleratedX.

Tuning

cLive notes that with RedHat 6 if your CD-rom PCMCIA card is an adaptec 1460, the 6.0 boot disks do not work. Download the 5.2 boot.img and supp.img files and use these to set up pcmcia. Then use the 6.0 cd as usual for install.

Acknowledgements

Alexis Dimitriadis maintains a page on X on the Dell for pre version 2 versions of the Linux kernel.

Contents
The Hardware
Installation
X Windows
Acknowledgements
Resources
Debian GNU/Linux
Linux Documentation
Linux on Laptops
Linux with Laptops

© 1999 Graham Williams

This document can be freely redistributed in the spirit of the free software community.


Please let me know of updates by sending email to Graham.Williams@cmis.csiro.au

Have Fun!