OpenBSD on an IBM ThinkPad T20

Note -- $Date: 2007/10/18 00:26:53 $

My T20 has been replaced with a T23. T23 info can be found here.

What is it

The T20 series ThinkPad is replacing the 600 Series. In typical IBM form you have to look at the model number in detail to figure out the combination of disk, screen, modem/lan, cdrom/dvd, and OS the machine comes with. Mine is a 2647-41U. That -41U says its a 700 MHz, 128 MB RAM, 14.1 inch monitor, 12 GB disk, (useless) Winmodem, DVD, running Win98. And a floppy, of course.

The pointer device is the IBM trackpoint (which I like). With the trackpoint are three buttons, just like a real mouse. The control key is in the wrong place. However,

wsconsctl -w encoding=us.metaesc map+="keysym Caps_Lock = Control_L"

as root solves that problem.

Start-up

I booted Win98 once. This may be important as one of the things it said it was doing was preparing the hybernation area on disk. (See below). Once I was sure the basic machine worked out came an OpenBSD 2.7 boot floppy. The machine is now dedicated to OpenBSD, runing OpenBSD -current; I do a `make build' every week or three, and have not had any problems running any version of OpenBSD.

What works

When running apmd the zzz command puts the machine in what IBM calls Suspend mode. According to an IBM web page:

While in this mode the `quarter moon' indicator next to the battery is illuminated. Hitting the power button restores the system. Most of the time the network interface is restored. If not, ifconfig the interface down then back up. If using Wavelan cards you may need to issue some wicontrol commands before the network will work again. Put the commands in a script named /etc/apm/resume and things will be handled automatically. See apmd(8) for details.

halt -p will not power down the system unless machdep.apmhalt=1. The machdep.apmhalt sysctl(8) variable was added to the source tree January 4, 2001. You'll need a release or snapshot created after that date to set the variable.

Fn+F4 or closing the lid will do the same as above. When suspended by closing the lid opening the lid restores the system. You can modify the BIOS so closing the lid does not suspend the system.

Fn+F3 will put the box into standby mode. IBM says the LCD, HDD, and Audio are turned off in this mode. I can verify that audio is disabled. On the other hand I still hear some HDD activity, although the LCD does stay off until a key or the mouse are moved. The icon on the F3 key is X. Note: see below regarding X11R6.

Cardbus support, at least accessing pcmcia cards with a cardbus enabled kernel, works as of OpenBSD 2.8-beta.

The first time I played with the DVD drive I managed to lock up the system, but now suspect it was a transitory OS problem. The DVD works as a CD-ROM. Xcdplayer plays audio disks. Use headphones: the internal speakers are quite tiny and high pitched. The command 'tosha -i' works, but causes some scsi error messages, so use cdparanoia (in the ports tree).

The audio device is the CS4280-like CS4614 (2.7 says it is a 4280, 2.8 and later gets the device right). There is a driver for this device that has been added to the GENERIC kernel post 2.7. At first I had audio problems that seemed to be interrupt related, but the problems went away when I disabled "PCI Bus Power Management" in the BIOS.

What doesn't work

There is a mini-pci slot with a Lucent Win Modem. It is, of course, not configured. I've been informed that you can order a mini-pci ethernet card from IBM for about $50. I use my wavelan card for net access so don't need this.

Fn+F12 (hybernate) does not work. This is due to assigning the whole disk to OpenBSD. In hindsight I should have looked at the existing disk layout before saying "use it all for OpenBSD". I'm guessing I undid whatever was done when I first turned the system on. I've found references to an IBM utility that might be able to run from one of the supplied CD-ROMs to re-build my hybernation area.

update: Hybernation needs a fat32 partition. I'll do without it for now.

There is an S-Video take off, but nothing was seen when I connected the T20 to my TV.

Unknown

I've not played with USB.

I've not used an external monitor, keyboard, or mouse.

X11R6

The T20 uses an S3 Savage/IX8 which is not supported in XFree86/OpenBSD 2.7, but is supported in snapshots and releases created after Oct 8, 2000. It is also suported by XF4 in OpenBSD 2.9 and later. See http://www.probo.com/timr/savagemx.html for information on the code imported to the OpenBSD X11 tree.

You can use my XF86Config (updated Apr 27, 2001) as a starting point. If you're still using the old X11 use my older config file.

$snafu: index.html,v 1.31 2007/10/18 00:26:53 marc Exp $ validate