Debian GNU/Linux with an Acer Travelmate 290

Updated November 14 2005

Cette page en fran├žais?
I tried to put together all sorts of information and configuration files to fully use linux on this computer. This information might also be good for other laptops (especially the Travelmate 29x series), as long as the hardware is about the same
Please take note that if you destroy your linux installation or your computer by following what is described here, I'm not responsible. What's written here works fine for me, but it might not work as fine for you. So please ensure that you fully understand what is explained. Don't just use my configuration files, try to understand them.

If you have any comments or suggestions, please send me an e-mail, I'd be happy to answer it: thestik at gmail dot com

Let's start by using lspci to know what's inside this laptop:
0000:00:00.0 Host bridge: Intel Corporation 82852/82855 GM/GME/PM/GMV Processor to I/O Controller (rev 02)
0000:00:00.1 System peripheral: Intel Corporation 82852/82855 GM/GME/PM/GMV Processor to I/O Controller (rev 02)
0000:00:00.3 System peripheral: Intel Corporation 82852/82855 GM/GME/PM/GMV Processor to I/O Controller (rev 02)
0000:00:02.0 VGA compatible controller: Intel Corporation 82852/855GM Integrated Graphics Device (rev 02)
0000:00:02.1 Display controller: Intel Corporation 82852/855GM Integrated Graphics Device (rev 02)
0000:00:1d.0 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (rev 03)
0000:00:1d.1 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (rev 03)
0000:00:1d.2 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (rev 03)
0000:00:1d.7 USB Controller: Intel Corporation 82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (rev 03)
0000:00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev 83)
0000:00:1f.0 ISA bridge: Intel Corporation 82801DBM (ICH4-M) LPC Interface Bridge (rev 03)
0000:00:1f.1 IDE interface: Intel Corporation 82801DBM (ICH4-M) IDE Controller (rev 03)
0000:00:1f.3 SMBus: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (rev 03)
0000:00:1f.5 Multimedia audio controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (rev 03)
0000:00:1f.6 Modem: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (rev 03)
0000:01:00.0 FireWire (IEEE 1394): VIA Technologies, Inc. IEEE 1394 Host Controller (rev 80)
0000:01:01.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
0000:01:02.0 Network controller: Intel Corporation PRO/Wireless LAN 2100 3B Mini PCI Adapter (rev 04)
0000:01:04.0 CardBus bridge: ENE Technology Inc CB1410 Cardbus Controller (rev 01)
Here's what I have:

1- The Graphics card

It's perfectly recognized and configured by dpkg, just choose the i810 driver and it'll work like a charm. Here's my xorg.conf or my XF86Config-4. I get about 650fps with glxgears in the 24bit mode, and twice as much in the 16bit mode.

2- The Sound Card

It's recognized on installation, and the kernel loads the snd-intel-8x0 module. It doesn't support hardware multiplexing, but I get pretty good results with dmix. Here's my .asoundrc, just place it in your home folder. Arts or esd also give good results, but they eat up more CPU cycles, and the software compatibility is pretty bad too.

3- The Touchpad

The ALPS touchpad doesn't always work fine after installing Debian: the pointer is slow, and pretty hard to control. Install the Synaptics driver, it makes the pointer move smoothly, and also adds a virtual scrolling function on the sides of the touchpad (just like under windows with the acer software)
apt-get install xfree86-driver-synaptics
If you have a touchpad other than ALPS, you just need to modify your xorg.conf or XF86Config-4. However, if you do have an ALPS, things get a little complicated:

You'll need to patch the kernel, then compile it if it's a 2.6.x series before 2.6.11. If you have a 2.4 series, no problem, just add this lone to your xorg.conf or XF86Config-4, in the touchpad section:
Option "Protocol" "alps"
So if you have a 2.6.x prior to 2.6.11, you'll need to install the kernel source, then apply the alps.patch patch (get it from the Synaptics source here ) by doing:
su
cp /where you put the file/alps.patch /usr/src/linux
cd /usr/src/linux
patch -p1 X alps.patch
Then, make menuconfig (or xconfig), make, make modules_install (read a how-to on kernel compilation if you don't know how to do this). For you lazy ones, here's my configuration file for the 2.6.14 kernel. Beware, the 2.6.14 kernel is already patched, you just need to compile it! Now, you need to add a special section to your xorg.conf or XF86Config-4. Take a look at mine. Be careful, I have an ALPS touchpad! This part of the configuration is different if you have another touchpad (for instance Travelmate 292s don't have ALPS touchpads)! Please read Synaptics' faqs and documentation here.

4- TV and VGA-out

I'm on it! If you have a 2.4 kernel with Xfree, you might want to try Intel's official drivers. Apparently they handle this pretty well.

5- The Winmodem

The AC'97 Winmodem works fine with SmartLink's non-free drivers. Here's how to install them:
apt-get install sl-modem-source sl-modem-daemon
Please note you'll need to add non-free packages to the debian repository in your /etc/apt/sources.list. Here's mine. It also has many sources to install mplayer, freevo, java...Just uncomment what you need, then do apt-get update

6- Network Card

The network card is very standard, Debian automagically recognizes it. The kernel module is 8139too. I'd recommend installing the laptop-net package, which automatically detects whether an ethernet cable is present, avoids doing useless DHCP requests on boot, and also automatically casts DHCP requests when a cable's connected.
apt-get install laptop-net

7- Wireless LAN

Since the 2.6.14 kernel, the ipw2100 et ipw2200 drivers are included in the kernel, so you shouldn't need to compile them, just choose the proper module. If you want to install them manually, download them here. To install them, extract the package, make, su, make install. For more information read the readme file included in the package.

You can install them via dpkg, too, thanks to module-assistant:
apt-get install module-assistant ipw2100-source
Than, run module-assistant as root, and follow instructions. This card is perfectly supported by kismet, which is a great tool. Here's my /usr/local/etc/kismet.conf . Don't forget to change the suiduser= variable by writing your username!

8- CD burner

It's a QSI burner, which is perfectly recognized by K3b. Works fine.

9- Firewire

Most people say it works fine, but I don't have anything to try it out.

10- Infrared Port

Tried it with no success, apparently there aren't any drivers for SMC IrCC devices (yet). Also, very little documentation is available on the subject, so I have no idea how to make it work. If you managed to use it, please contact me!

11- Hotkeys: P1 and P2 buttons, volume control, etc

No need for drivers, they work just fine. To use the the additional keys, I'd recommend xbindkeys, a pretty nice program. For volume control, rexima combined with xbindkeys does the trick. To install xbindkeys and rexima:
apt-get install xbindkeys xbindkeys-config rexima
Now to configure xbindkeys, you can use xbindkeys-config (run it from a terminal). It's a very easy to use graphical tool. For lazy ones out there, here's my .xbinkeysrc. Just place it in your home folder. P1 launches Firefox, and P2 Kmail. Then, you need to make xbindkeys run on boot. I did a small script I put in ~/.kde/Autostart so that xbindkeys is launched when KDE starts. There are many ways to do this, see for yourself.

12- Centrino and Speedstep

The officiel Debian kernel doesn't have what's best for my pentium M, so I compiled my kernel. If you want, you can use my kernel configuration for 2.6.14. I use laptop-mode-tools for HDD management, and klaptop to handle CPU frequencies (but you can also use laptop-mode-tools for this).
apt-get install laptop-mode-tools
Then edit the /etc/laptop-mode/laptop-mode.conf file. Everything is explained in that file, just edit to your suiting (but be careful). Laptop-mode-tools handles many things, such as CPU frequency when on battery, disk timeout, etc. Really gets my battery running longer. Here's my laptop-mode.conf.

13- Precompiled kernel packages

For those lazy ones out there, I compiled a debian package of my 2.6.14 kernel. Download it here. I tested it and it works fine. To install it, log on as root then:
dpgk -i kernel.deb
Please use this precompiled kernel only if you're sure your hardware is identical or at least compatible. This kernel includes ReiserFS, ext3 and ext2 support hard-coded. I can't guarantee I checked all the modules you need.

14- Suspending/Hibernation

Suspending works, but the computer doesn't return from suspending. Same for hibernation. The computer turns off, but upon rebooting, the kernel doesn't return to the previous state and hangs...I'd also advise you to turn off these options in the software you use to control ACPI (such as klaptop).

15- Software Suspend 2

Since hardware hibernation doesn't work, you can try Software Suspend 2 if you really need it. The procedure to install and configure Software Suspend 2 is fairly complicated. Please thoroughly read its documentation before trying anything. Here's a deb kernel precompiled with software suspend 2 support (with swapwriter enabled, not filewriter). To install it, please log as root then:
dpgk -i kernel-suspend.deb
You'll also need to install the hibernate script, by adding this entry to your /etc/apt/sources.list:
deb http://cp.yi.org/apt/hibernate/ ./
Then apt-get update, and:
apt-get install hibernate
Now edit the /etc/hibernate/hibernate.conf file (run hibernate -h for explanations on options). Here's my hibernate.conf.
Next, you'll need to edit your lilo.conf/grub menu.lst and add an option to the kernel for Software Suspend 2, for instance:
resume2=swap:/dev/hda5
Which means you want to resume from /dev/hda3, your swap partition. Change accordingly, and make sure your swap partition is big enough!
Here's an example of a typical grub entry with software suspend 2:
title Debian GNU/Linux, kernel 2.6.14 Default
root (hd0,5)
kernel /boot/vmlinuz root=/dev/hda6 ro resume2=swap:/dev/hda5
savedefault
boot
Finally, to hibernate, simply launch "hibernate" as root in a terminal. Software Suspend 2 is far from perfect, please keep that in mind when you use it!

This document is delivered under the GNU FDL licence
Written by TheStick - thestik at gmail dot com