DAG

Shortcuts:
Dconf ∑ Dstat ∑ Dwall ∑ Dweb ∑ Dwscan ∑ Lyrics ∑ mrepo ∑ Pixies.. ∑ RPMs ∑ unoconv ∑ wascii ∑ wiipresent ∑ Yam ∑

Google Site Search:
Flemish symbol European symbol
» Dag Wieers » Howtos » Thinkpads » Linux on an IBM Thinkpad X20 
Linux on an IBM Thinkpad X20
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 <dag@wieers.com> IBM Thinkpad X20

Model number: 2662-32G

List of hardware: I only installed Red Hat 7.1, everything worked off the shelf. I compiled my own kernel afterwards. (make rpm)

Please note that if a graphical installation does not work, you can always try to install it text-based. To avoid problems with booting large harddisks, please use a recent version of LILO that supports LBA with large hard drives and that doesn't have the 1024 cilinder limitation for kernel-images. 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.

To compile a kernel for your system, you should check the Kernel HOWTO, but for your convenience we've put specific config-files online that works great with the Thinkpad X20. The configuration of X works automaticaly for several distributions. However if you have problems, please use this XF86Config-file. For XFree86 3.3.6, you should use the XF86_Mach64 server. For XFree86 4.1.0 you need the ati-driver (as specified in the proper XF86Config-file). 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. When this support is 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. I had the misfortune of having an X20 with only the Linmodem Mini-card and not the much more interesting Combo-cards (that will make the already wired and functional Ethernet-jack at the back useful). If you have such a Combo-card, I can assure you that they work with Linux. The driver you need is cs4281 and it works like it should.

There is a small problem with the soundcard when rebooting from Windows 98. It refuses to load the driver (the device doesn't seem to work correctly). Halting and powering down the system solves the problem.

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 PCMCIA HOWTO

Although the system indicates you have 2 PCMCIA slots, one is used by the Flashcard reader. I haven't tried it (yet). The laptop comes with a Lucent winmodem. Unfortunately, there is no real Open Source driver, the module 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 module and more information about winmodems on the linmodems website. If you used the kernel-config above, you're able to use the VESA framebuffer driver by adding the following lines to your /etc/lilo.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 VideoLAN Client (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.

The X20 consists of 2 parts. A very thin laptop and a small docking station. You can have the docking station attached to the X20 all the time (if you don't mind it being not that thin anymore). To undock the X20 however, you need to halt the system first and power it down, at least in Linux. It's a pity though that software to handle the undocking process does not exist for Linux. 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 X20 has the following flaws: Here are some pointers to more information about these thinkpads and other laptops.