Installing Debian Linux 2.2 on an IBM Thinkpad T20
See also: Thinkpad 390
Specifications
- Model: IBM Thinkpad T20 [2647-92u]
- Screen: 14.1" TFT [1024x768]
- CPU: Mobile Pentium-III SE 750 MHz
- RAM: 128 MB
- Disk: 20 GB Hard Drive
- Peripherals: Swappable floppy and DVD-ROM Drive
- IrDA: Supported (untested)
- Sound: Crystal Audio Sound Fusion PCI
- Video: S3 Savage IX8 8MB RAM
- PCMCIA: Two Type 2 Cardbus Slots
- Modem: Winmodem
- Parts list: http://www-1.ibm.com/support/docview.wss?rs=0&uid=psg1MIGR-4UYKLK&loc=en_US
Installing Debian
This was pretty painless. I did one piece of pre-emptive configuring, which I learned when I installed GNU/Linux on my Thinkpad 390. I'm not actually sure if it's necessary with the T20, but I figured it wouldn't hurt to do it the safe way.
hda1 Boot Primary Win95 FAT32 (LBA) 10567.07 hda2 Primary Linux ext2 3003.68 hda3 Primary Linux ext2 6301.54 hda4 Primary Linux swap 131.61
The important thing to note here is that the "boot" flag is on the windows partition. It turns out that the way the power saving features work with the 390 requires that the boot flag is set on the partition which contains the "save to disk" file, this is a BIOS requirement, so there's not much you can do about it. Here is how I setup my /etc/lilo.conf for my 390.
My disk came with a single large FAT32 partition on it, so I used a copy of Partition Magic I had lying around to resize. If you're looking for something free that you can download to check out, you might want to investigate nParted or Diskdrake. I haven't used either of them directly, but I've seen Diskdrake work from a Mandrake CD and nParted from a Progeny CD (I think Progeny uses nParted anyway) and both seemed to do the job pretty well.
Setting up XFree86
There is a XFree86 4.0.x driver which I haven't tried yet, but hopefully I will soon. The driver is also slated to be included in X v4.0.2. Currently I am still using a hacked version of the XFree 3.3.6 SVGA driver which works pretty well, though the refresh rate seems kinda slow.
I had a hard time finding an XF86Config file that worked the way I wanted, so I've made mine available, it doesn't require a font server.
Internal Ethernet
My first T20 had a 3com 3c556b internal Mini-PCI ethernet and winmodem card. This variation was only supported as of the 2.2.18 kernel 2.2.18 (I'm not sure if it's supported in the 2.4 kernels). I had an additional problem which caused the eth0
interface to die permanently after a suspend/resume cycle. Not all T20's suffer from this, but if needed the solution is documented on the vortex mailing list.
My current T20 has an Intel EtherExpress Pro Mini-PCI card which works out of the box, even with older kernels. Apparently IBM ships both cards with their laptops, and it's luck of the draw which one you get.
PCMCIA Support
Once I got the internal ethernet working, I've had little need for PCMCIA. I did have a Cisco 340 Aironet card at my last job and an WaveLan/Orinoco card at home, both of which work just fine out of the box. The 340's are a pretty nice 802.11b cards, they'll supposedly work up to 11 Mb/s. There was basically nothing to it, just make sure you have a recent version of the PCMCIA modules (the latest from woody works). The WaveLan/Orinoco cards have been supported under Linux forever.
While you're checking out wireless gear, check out Personal Telco's list of wireless communities for one near to you, and join up with one!
Sound
I got sound working with little hassle using the OSS/free drivers in the standard 2.2.17 kernel. Just run modconf
, load the module ac97_codec
and then cs46xx
and it should work just fine. Even the mute and volume up/down buttons work just fine. With the ethernet and sound modules loaded and working, this is what I get from an lsmod
. I just found that apparently there is a thinkpad=1
option to the cs46xx
module which will make the APM stuff work correctly (so you don't have to unload/load the module after a suspend/resume cycle ... this may be a Redhat specific feature, I haven't dug into it yet).
Module Size Used by serial 19532 0 (autoclean) parport_probe 3332 0 (autoclean) (unused) parport 7280 0 (autoclean) [parport_probe] nls_cp437 3904 2 (autoclean) vfat 9008 1 (autoclean) 3c59x 19552 1 cs46xx 70380 0 soundcore 2628 2 [cs46xx] ac97_codec 7140 0 [cs46xx] unix 10180 46 (autoclean)
Before I succeeded in doing this, I got sound working with the Debian Alsa packages (from woody) but had problems with sound being flaky after suspending. If you want to use Alsa running alsaconf
and installing the cs46xx
driver should work just fine. Next, I tried the commercial OSS drivers from 4Front Technologies. They worked, but would cause a complete system lock up (have to hold down the power button until it turns the power off) as soon as I stopped playing an MP3.
Links and Thanks
- There are certain pages and software that I've found in the process of making this all work which have been very helpful, or look like they will be helpful soon.
- Thanks to Andrew Morton and the Vortex mailing list for the patch which got my
3c556b
card to work properly. - A huge vote of thanks to Kenneth Harker for putting the Linux Laptop page together. Without this resource, getting Linux to work this nicely would have really sucked.
- Thanks to David Hinds for writing the PCMCIA support for GNU/Linux and maintaining the GNU/Linux PCMCIA information page. There is also the PCMCIA Howto which helps explain some of the issues involved.
- There is a GNU/Linux version of the phdisk utility which creates the save to disk partitions that many Thinkpads require.
- I just found out about the Ultraport connector on the top of the T20's monitor, which will take a digital camera. There is some useful information about the different versions, and supposedly there is GNU/Linux support being developed as well.
- Being a Window Maker fan there are some great doc apps out there. My favourites are
wmclock
(the standard next type date/time app),wmapm
(monitors battery utilisation, whether your plugged in or on battery),wmsysmon
(monitors memory, swap, i/o, uptime, interrupt usage and page/swap in/out),wmix
(a kick ass mixer),wmwave
(monitors Wavelan/Lucent/Orinoco signal strength meter) andwmnetselect
(a great dock app interface to Netscape/Mozilla). - At Michael Reinsch's T20 page I saw these words on the Thinkpad Ultrabay ...
Hot swapping does not work. But you can change the drive while the notebook is suspended (either to RAM or disk). This works OK for me when changing from CD/DVD to floppy. Klaus Espenlaub told me, that swapping works better with some devices (i.e. ZIP drives) if one uses
hdparm -U
first to un-register and after swappinghdparm -R
to re-register the IDE interface. Please read thehdparm
manpage before playing around with it! This stuff can be dangerous! - The page for my Thinkpad 390 which has a slightly different collection of information on it.
- And of course a final thanks to all the contributors of Debian, GNU and Linux in general!
Loading comments...