Difference between revisions of "Installing Kubuntu 6.10 on a ThinkPad X60s"

From ThinkWiki
Jump to: navigation, search
(What needs to be fixed: * Suspend to RAM (works partially))
(Suspending)
Line 59: Line 59:
 
=== Suspending ===
 
=== 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 would seem to work. More extensive testing is required, however.
+
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).
  
Regardless of the status of the radios, suspending to disk would seem to work every time.
+
Hibernate (suspend to disk, swsusp) works.
  
 
=== HyperThreading ===
 
=== HyperThreading ===

Revision as of 20:29, 11 November 2006

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

  • Integrated fingerprint reader
  • Suspend to RAM (works partially)

What has not yet been tested

  • Bluetooth
  • Modem
  • TPM
  • Firewire

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

First boots

I booted to the installed Kubuntu system, noticed that everything seemed fine and then booted back into Windows, which ran the disk checker, finding no errors. The NTFS resize process had not broken anything.

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.

HyperThreading

Contrary to my initial beliefs and /proc/cpuinfo reporting the processor as being HyperThreading capable, it would seem that Intel Core Duo does not support HyperThreading after all. Therefore the Core Duo is visible to Linux as two "processors", not four as would be the case if the processor were actually HyperThreading.