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

From ThinkWiki
Jump to: navigation, search
(a description of my kubuntu installation)
 
m (External Sources: Refining Category)
 
(28 intermediate revisions by 5 users not shown)
Line 7: Line 7:
 
* Everything not listed below :)
 
* Everything not listed below :)
  
=== What needs to be fixed
+
=== What needs to be fixed ===
  
* Suspend to memory (it worked but I broke it, see below)
+
* CPU frequency scaling
 +
* Suspend to RAM (works partially)
 
* Integrated fingerprint reader
 
* Integrated fingerprint reader
 +
* VGA out
  
 
=== What has not yet been tested ===
 
=== What has not yet been tested ===
  
* Bluetooth
 
 
* Modem
 
* Modem
 
* TPM
 
* TPM
* Firewire
+
* PCMCIA
  
 
== Installation ==
 
== Installation ==
Line 24: Line 25:
  
 
== Fixes after installation ==
 
== Fixes after installation ==
 
=== 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 ===
 
=== CPU frequency scaling ===
Line 47: Line 44:
 
  cpufreq_ondemand
 
  cpufreq_ondemand
  
=== Suspend to memory ===
+
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 ===
 +
 
 +
Getting suspending to memory work requires altering the bootloader configuration to add <tt>acpi_sleep=s3_bios</tt> to the bootloader configuration. In <tt>/boot/grub/menu.lst</tt> find the line that says
 +
 
 +
# kopt_2_6=root=/dev/sda1 ro
 +
 
 +
and change it to
 +
 
 +
# kopt_2_6=root=/dev/sda1 acpi_sleep=s3_bios ro
 +
 
 +
and run <tt>update-grub</tt>.
 +
 
 +
Note that the comment character (<tt>#</tt>) is intentional - this instruction is parsed by <tt>update-grub</tt>, not by GRUB itself.
 +
 
 +
Hibernate (suspend to disk, swsusp) works.
 +
 
 +
=== Integrated fingerprint reader ===
 +
 
 +
Kubuntu Edgy does not contain out-of-the-box support for the [[integrated fingerprint reader]] of the X60s.
 +
 
 +
=== VGA out ===
 +
 
 +
Add Option "Clone" on the Section "Device" will make the Xorg clone the LCD output to VGA output.
 +
 
 +
Section "Device"
 +
    Identifier    "Intel GMA 950"
 +
    Driver        "i810"
 +
    BusID          "PCI:0:2:0"
 +
    Option        "AccelMethod"    "EXA"
 +
    '''Option        "Clone"          "true"'''
 +
    Option        "MonitorLayout"  "CRT,LFP"
 +
EndSection
  
Soon after I first installed Kubuntu I tried both hibernate (suspend to disk) and suspend (suspend to RAM) which, to my amazement, actually '''worked'''. But I somehow managed to break them when I messed around with the frequency scaling stuff... Now the machine just hangs when I try to suspend, blinking the suspend led indefinitely. I have yet to find out what I did wrong, and how to fix it.
+
=External Sources=
 +
*This guide is listed at the [http://tuxmobil.org/ibm.html TuxMobil Linux laptop and notebook installation survey (IBM/Lenovo)].
  
[[Category:X60s]] [[Category:Installation]]
+
[[Category:X60s]]
 +
[[Category:Kubuntu 6.10]]

Latest revision as of 02:01, 17 August 2010

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
  • VGA out

What has not yet been tested

  • Modem
  • TPM
  • 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.

Fixes after installation

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

Getting suspending to memory work requires altering the bootloader configuration to add acpi_sleep=s3_bios to the bootloader configuration. In /boot/grub/menu.lst find the line that says

# kopt_2_6=root=/dev/sda1 ro

and change it to

# kopt_2_6=root=/dev/sda1 acpi_sleep=s3_bios ro

and run update-grub.

Note that the comment character (#) is intentional - this instruction is parsed by update-grub, not by GRUB itself.

Hibernate (suspend to disk, swsusp) works.

Integrated fingerprint reader

Kubuntu Edgy does not contain out-of-the-box support for the integrated fingerprint reader of the X60s.

VGA out

Add Option "Clone" on the Section "Device" will make the Xorg clone the LCD output to VGA output.

Section "Device"
    Identifier     "Intel GMA 950"
    Driver         "i810"
    BusID          "PCI:0:2:0"
    Option         "AccelMethod"    "EXA"
    Option         "Clone"          "true"
    Option         "MonitorLayout"  "CRT,LFP"
EndSection

External Sources