Linux on an IBM Thinkpad T30

kernel

I've recently started using ACPI, which has been working well. My current kernel is a 2.6.9-rc3-bk6, with lenb's ACPI patch.

My current.config is available here.

The only problem I've experienced with ACPI is the suspend-to-memory function - which didn't turn off the LCD backlight (in fact, if I manually turned it off in the suspend script, it would turn back on as the machine went down). This patch provides a temporary fix.

Processor

Although /proc/cpuinfo shows the 'ht' (hyperthreaded) flag, there is only one thread available for use. SMP init fails in arch/i386/kernel/cpu/intel.c:278:

	cpuid(1, &eax, &ebx, &ecx, &edx);
	smp_num_siblings = (ebx & 0xff0000) >> 16;

	if (smp_num_siblings == 1) {
		printk(KERN_INFO  "CPU: Hyper-Threading is disabled\n");
	
So there's only one processor thread available for SMT. It would have been great having a dual-threaded laptop.

With the acpi-cpufreq driver, the CPU frequency can be reduced by a factor of 0 and 87%.

Thinkpad-specific functions

The ibmacpi-0.3 module adds support for the Fn+Function-key buttons, as well as LCD controls, and allows software control of the ThinkLight.

Sound

Works great using the alsa intel8x0 driver.

Ethernet

e100 is your friend.

Wireless

The in-kernel Orinoco PCI driver works, but with earlier kernels I've had problems with watchdog timeouts under high network load. David Gibson has a newer Orinoco driver which has fixed the problem.

IrDA

Works with the irtty-sir driver. I haven't hade any luck with the fir drivers - in fact, loading the fir driver (nsc-ircc) will make the sir not work until a reboot. The sir driver has turned out to be sufficient though.

Docking

I use one of the Thinkpad II Docks at work, which includes a PCI bus (which is hosting an Acenic fibre card). Everything works, although I haven't tried hot-plugging or unplugging the dock...

distribution

I use Debian Unstable, but have had Fedora core 1 working previously

XFree86

The T30 has a Radeon 7500 Mobility video device. lspci reports:

0000:01:00.0 VGA compatible controller: ATI Technologies Inc Radeon Mobility M7 LW [Radeon Mobility 7500]

This device is dual-headed - and can drive an external monitor independently to the LCD. This requires a little trickery with X11, my XF86Config file is available here. The catch is to specify the PCI ID of the video card in both Device sections.

Having two screens is handy, but this doesn't allow applications to be moved from one monitor to the other. I'm using Xinerama to merge both screens into one desktop (which fluxbox handles nicely). If X is started with no external monitor attached, the desktop is sized to fit only on the LCD monitor.