Installing Kubuntu 6.10 on a ThinkPad X60s
Contents
Installation of Kubuntu 6.10 on a ThinkPad X60s (model 1704-56G)
Summary
What works out of the box
- Everything not listed below :)
What needs to be fixed
- CPU frequency scaling
- Suspend to RAM (works partially)
- Integrated fingerprint reader
What has not yet been tested
- Modem
- TPM
- Firewire
- PCMCIA
Installation
The X60s lacks an optical drive, so installation was done using an IDE DVD-ROM drive installed into an USB HDD case. The laptop was first booted into Windows so the FAT32 partition would get converted into NTFS. The Kubuntu live environment was then booted from the DVD-ROM drive and the installation process was started from the desktop icon. During the installation, the Windows partition was resized from 70 GB to 20 GB and Linux partitions (1 GB swap, 20 GB /, the rest in /home) were created in the free space. The installation process then completed without errors.
Notes and fixes
CPU frequency scaling
In Kubuntu the first core was correctly scaled down into 1,0 GHz but the second core stubbornly stayed at 1,67 GHz. I found out the second core was using the "performance" governor instead of "ondemand". The governor could be changed manually as follows:
echo ondemand | sudo tee /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor echo ondemand | sudo tee /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
I also installed the package "sysfsutils" and added the following lines into /etc/sysfs.conf:
devices/system/cpu/cpu0/cpufreq/scaling_governor=ondemand devices/system/cpu/cpu1/cpufreq/scaling_governor=ondemand
This way the correct governor is selected at boot-time. Because I was using in-kernel frequency selection (ondemand governor), I removed the "powernowd" package and added the following lines into /etc/modules so that the cpufreq modules would still get loaded at startup:
freq_table speedstep_centrino cpufreq_ondemand
Settings from sysfs.conf are not forced after suspend or hibernate, though, so I added the following short script as /etc/acpi/resume.d/99-cpufreq-ondemand:
#!/bin/bash #Activate the ondemand governor on each CPU for i in /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor; do echo ondemand > $i done
Remember to make the script executable.
Suspending
It would seem that attempting to suspend with the WLAN and/or Bluetooth radios turned on makes the suspend process hang (suspend LED keeps on blinking indefinitely). With the radios turned off using Fn+F5 suspend still crashes too often (about once in three tries).
Hibernate (suspend to disk, swsusp) works.