IBM is a big Linux-supporter and most of their hardware is supported. That's why these thinkpads are probably the best choice for running Linux on a laptop. Let's go through it in detail.
For suggestions, improvements or if you just want to talk to somebody, please mail to: Dag Wieërs <> IBM Thinkpad T30

Model number: 2366-DG3

List of hardware: To move my existing Red Hat 9 installation from my older X20 thinkpad to my new T30 thinkpad, I added my X20 disk with a HDD bay into the DVDROM/CDRW area.

I then booted my second HDD (using F12 bios option) and started my RH9 into single usermode. I mounted my partition read-only and used dd to copy my RH9 partition from my X20 disk to my T30.

I then chrooted to my new disk, ran grub-install, rebooted, removed the old disk and inserted my DVDROM/CDRW and booted Linux.

In the process I also moved my personal files from my Windows partitions to the existing Windows 2000 installation. (Basicly the downloaded Open Source tools that I may need when I boot to Windows)

The nice thing about Linux is that you can configure your kernel exactly to fit your hardware and since kernels improve very fast, you can keep up with the latest features of the kernel as soon as they arrive.

However I use the stock Red Hat kernels whenever I can, so no customizations are needed. Some kernel modules need some extra drivers, more on that below.

Your thinkpad normally brings down the speed of the processor to consume less power when disconnected from AC power. My thinkpad has a 1.8Mhz CPU but when disconnected from AC power goes down to 1.2Mhz (66%).

Red Hat supports this by configuring it in /etc/sysconfig/apmd and setting CPUFREQ="yes". This will cause the speedstep module to be loaded and next you can peek/poke at /proc/cpufreq and change the default behaviour described above. There's also a utility that let's you control this in a more advanced fasion, it's called cpudyn.

For Red Hat you can download the cpudyn package at:
The configuration of X works automaticaly for several distributions.

For XFree86 3.3.6, you should use the XF86_Mach64 server. For XFree86 4.1.0 or higher you need the ati-driver.

You can use the GATOS drivers from , they might have support for some special features. But to get DRI to work you need a special kernel module build for GATOS and since the default drivers perform very well, I didn't bother to look at them.

On these types of thinkpads the key-combination Fn-F7 allows you to switch from your LCD to an external monitor or both. (Three phases) This however leaves your X in the same resolution as on your LCD, which is lower than the capablities of your external monitor. At this time however, you need to restart your X-server to change the resolution. Work is in progress to overcome this problem.

In Windows 98 you can use the external monitor as a second head, unfortunately this is not supported by XFree86 (and also not with Windows 2000). When this support will be added is unknown.

There is a special option in your XF86Config file to specify using the external monitor at startup.

Beware: the BIOS allows you to boot with an external monitor by default.

With a utility called atitvout you can control the ATI S-Video or CRT output capabilities. However, for the S-Video to work, it has to be connected before booting, otherwise you cannot make it work. Which makes it rather hard to quickly use it in certain situations.

With my ATI Mobility Radeon 7500 I can't get the TV-Out to work properly. atitvout doesn't seem to support the card very well. (I can probe some of it features, but cannot set anything.)

The driver you need is i810_audio and it works like it should.

You could also use the alsa sound drivers, but I never needed the extra functionality that the alsa drivers offer.

The internal ethernet card works perfectly with the e100 module that comes with the kernel. Even suspend or standby works very well without a problem.

My notebook was blesses with a Cisco Aironet MPI 350, which isn't supported by default by the kernel aironet driver (airo), but Cisco has a GPL-licensed kernel available. (mpi350)

My favorite Cisco specialist, alas friend, told me that the latest firmware (since 5.02) doesn't work with both the Linux and Cisco driver. Problem is that the Windows driver automatically updates the firmware without your consent. So if you have problems (kernel oopses) in Linux, please make sure that you have the 5.00.03 firmware or downgrade the firmware with the ACU utility in Windows.

You can download the driver and ACU utilities at and the firmware from . You know when your driver works when you can access /proc/driver/mpi350 in Linux.

For Red Hat you can download a packaged driver and the ACU utility at:


19 October 2003: I finally took the time to package the wireless-tools enable airo_mpi driver which is fully GPLed and still works with ACU. You can find more information about this patched driver at:

For Red Hat you can download a packaged driver at:


Load the modules ircomm-tty to connect your Nokia IR phone to your thinkpad. The Infrared device is connected to /dev/ttyS1.

Beware: make sure you have the infrared device enabled in your BIOS.

APM seems to work perfectly here. I haven't tried ACPI.

You can suspend your laptop by pressing Fn-F4.

Beware: check your BIOS for additional configuration.

PCMCIA is supported and will most probably work off the shelf with your distribution. But if you have build your own kernel you need the right drivers for your PCMCIA-devices. To get more information about PCMCIA-drivers and how to configure them, check the

The laptop comes with a SmartLink winmodem. Unfortunately, there is no real Open Source driver, the module (slmdm) that does exist uses a binary object containing all the real code to use your winmodem. The wrapper-module (that uses the binary object) can be compiled with all the recent kernel-versions.

You can find the and more information about winmodems on the .

For Red Hat you can download a packaged driver and utility at:


You can either use the VESA framebuffer or the accelerated radeonfb driver. Either add: or to your kernel parameters in /etc/lilo.conf or /etc/grub.conf Here's a list of different modes: If you want to use the faster text-mode with smaller fonts (80x60) then you can simply use: If you used the kernel-config mentioned above, just link /dev/mouse to /dev/input/mouse0 and load the following modules usb-uhci, usbmouse and mousedev.

You can have both mouses (internal and USB or serial) work together in X by specifying the following in your "ServerLayout": And ofcourse defining both mouses.

Some people reported problems in enabling the numeric keypad. To enable NumLock (or NumLk) press Shift+ScrollLock (or Shift+ScrLk). BUT... this does not work in XFree86. I don't know yet how to enable this.

The internal DVD-ROM player works out of the box and works better under Linux than both Windows 98 and Windows 2000. The software I use is (or vlc). The sound signal is weak though and subtitles don't always work as they should, overall I had less problems with just playing.

*/?> I'm using journaling filesystems on most of my systems nowadays. I use ext3 because at this moment I don't trust neither reiserfs and XFS nor JFS or included in the kernel. And Red Hat comes by default with all the tools to use ext3 (although I've build a newer e2fsprogs package myself).

You don't really need a journaling filesystem, but occasionaly you find your machine locked up because it ran out of power or because you were experimenting a bit too much. And then you will enjoy a journaling filesystem more than ever.

Some settings allow to use both your trackpoint and an external mouse at the same time without a problem. TODO

IBM released some BIOS updates, unfortunately these updates are distributed as DOS or Windows executables which is a pain for Linux users. It would be nice of IBM to just distribute the images created by these disks so users of other platforms can upgrade their BIOS without needing DOS or Windows.

For your convenience we've put these images online: Only update your BIOS if you really need to.

Beware: you cannot upgrade your BIOS if this is disabled in your BIOS. (Doh!)

*/?> Here's my /etc/modules.conf file, Although I would recommend a thinkpad to everyone, my T30 has the following flaws: */?> Here are some pointers to more information about these thinkpads and other laptops.