Thinkpad x40

Thinkpad x40

"Perhaps one of the best supported notebooks because several developers also use it." - OpenBSD i386 Laptop Status. This laptop replaced my Thinkpad 240 in July 2006. So far I've had almost no trouble with it.

Suspend to disk actually works. You will need tphdisk.

I'm put off by a few things. I couldn't figure out how to buy one without also buying Microsoft software I don't need. I'm worried by reports that it doesn't work with most mini-pci 802.11 cards (apparently fixable with the tpwireless command). The Microsoft sticker on the back is hard to remove. And it has no serial port.

The default settings put all interrupts on irq11. You can change this in the bios. I set all mine to "Auto" and now I get a range of irqs. There is no perceptible change in performance.

The two keys on either side of the up-arrow key are codes 233 and 234. As suggested by jcs I map them to page-down and page-up:

xmodmap -e "keycode 233 = Page_Down" -e "keycode 234 = Page_Up"

CPU speed control works. /etc/sysctl.conf: hw.setperf=0

The 4.1 kismet does not work. I use kismet_server from 3.9.

My disk drive started failing in May 2008. It's a Hitachi HTC426030G7AT00. I replaced the disk with a 8GB CF card using an Addonics adapter. The CF is faster, cheaper, quieter, and draws less power than the disk. 8GB is plenty since I don't run anything from Microsoft.

A great resource for Thinkpad information is ThinkWiki. Also check out openbsd on laptops.

802.11 Wireless

I bought a 802.11 card based on the Ralink 2560 chip for $18 to replace the useless Intel card that came with my x40 (see below). After running tpwireless it seems to work fine with the ral(4) driver. It has a few quirks, which I can live with: The wireless indicator light at the bottom of the lcd screen doesn't work; I lose connectivity in monitor mode; kismet can't see the nework I'm associated with; and sometimes I have to unset the channel number to get it working (ifconfig -chan).

I was unable to get my Intel PRO/Wireless 2200BG to work. After installing the firmware it almost works, but if I try to change the WEP key the firmware apparently crashes. I tried the iwi_stop() patch from rev 1.67 of if_iwi.c but that didn't help. I tried the 3.0 firmware with the driver from OpenBSD 4.0 in a 3.9 kernel but it doesn't work.

OpenBSD 4.3 Configuration Files

kernel config (dmassaged) and dmesg

OpenBSD 4.1 Configuration Files

kernel config (dmassaged) and dmesg

OpenBSD 4.0 Configuration Files

kernel config (dmassaged) and dmesg

OpenBSD 3.9 Configuration Files

kernel config (dmassaged) and dmesg

Jim Rees