Installing Ubuntu 6.06 Flight 6 on a ThinkPad X60s
Contents
Installation of Ubuntu 6.06 Flight 6 on X60s (model 1705-24U)
Summary
What works out of the box
- Network adapter (Intel PRO/1000)
- Graphics adapter and accelerator (Intel GMA 950)
- USB
- Firewire
- Lid switch (LCD off when lid closed)
- Volume control, keyboard light and screen brightness control
- Hard disk laptop-mode (/proc/sys/vm/laptop-mode)
- LCD brightness auto-adjusts depending on AC or battery operation
- Fn buttons generate ACPI events (/var/log/acpid)
What needs to be fixed
- Dual core processor
- Wireless
- Processor frequency scaling
- Suspend to RAM
- Suspend to disk
- SD card reader
- Sound
Installing Ubuntu 6.06 Flight 6
IBM Rescue and Recovery disks (seven CDs) can be created using preinstalled Windows: All programs→ThinkVantage→Create Recovery Media. However, as long as recovery partition (called predesktop in BIOS) is left intact, system can be restored to factory default without having recovery CDs.
Ubuntu Flight 6 installer boots normally using external (USB) IBM DVD-ROM/CD-RW. SATA disk is recognised, Xorg 7.0, gdm and Gnome start normally. Xorg is configured with i810. DRI works (glxinfo|grep rendering). Networking works, eth0 uses e1000. ALSA sound worked after original installation, but at some point it stopped working as Dapper instantly had numerous updates, including kernel.
Fixes after installation
SMP kernel
Flight 6 installs 2.6.15-*-386 kernel without SMP support. After installation of -686 kernel (which appears to be SMP) /proc/cpuinfo reports CPU0 and CPU1.
Wi-Fi
Intel 3945ABG wireless driver is available from http://ipw3945.sourceforge.net/. Wireless works after following QUICK INSTALL STEPS in provided INSTALL file. Automating driver loading works as described too, except that /etc/modprobe.d/ipw3945 has to be used instead of the proposed /etc/modules.d/ipw3945.
CPU frequency scaling
After installation CPU0 switches between 1.5 GHz (full speed) and 1 GHz depending on load, but CPU1 stays at full speed. Flight 6 installs powernowd
and uses userspace
governor. Changing to ondemand
governor (/sysfs/devices/cpu/cpu0,1/cpufreq/scaling_governor) and thus using kernel part for frequency scaling (modules speedstep_centrino
and freq_table
) fixes this. To keep the change between reboots, install sysfsutils
package and add the following lines to /etc/sysfs.conf:
devices/cpu/cpu0/cpufreq/scaling_governor=ondemand devices/cpu/cpu1/cpufreq/scaling_governor=ondemand
powernowd
can then be disabled from auto-starting by rcconf
. It can also be apt-get remove
'd, but that also wants to remove ubuntu-desktop
metapackage.
High pitch noise while on battery
X60s CPU produces the infamous high pitch noise when in lower-power ACPI states (a.k.a. C-states). To eliminate the noise maximum (i.e. lowest power) C-state had to be limited to C2. In /etc/sysfs.conf:
module/processor/parameters/max_cstate=2
Unsolved
- Suspend to RAM (suspends, but crashes on resume)
- Suspend to disk (suspends, but crashes on resume)
- Sound
- SD card reader (driver in Linux kernel >=2.6.17)
Not tested
- PCMCIA slots
- Embeded Security Subsystem (TCPA)
- Active Protection System (HDAPS)
- Modem
Installation of Ubuntu 6.06 Flight 6 on X60s (model 170466U)
Specifications
- Processor - Intel Core Duo 1.66GHZ
- Hard Drive - SATA 80GB - HTS541080
- Networking - Integrated Wireless (Atheros)
- Sound - Intel
0000:00:00.0 Host bridge: Intel Corporation Mobile Memory Controller Hub (rev 03) 0000:00:02.0 VGA compatible controller: Intel Corporation Mobile Integrated Graphics Controller (rev 03) 0000:00:02.1 Display controller: Intel Corporation Mobile Integrated Graphics Controller (rev 03) 0000:00:1b.0 0403: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 02) 0000:00:1c.0 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 1 (rev 02) 0000:00:1c.1 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 2 (rev 02) 0000:00:1c.2 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 3 (rev 02) 0000:00:1c.3 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 4 (rev 02) 0000:00:1d.0 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #1 (rev 02) 0000:00:1d.1 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #2 (rev 02) 0000:00:1d.2 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #3 (rev 02) 0000:00:1d.3 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #4 (rev 02) 0000:00:1d.7 USB Controller: Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller (rev 02) 0000:00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e2) 0000:00:1f.0 ISA bridge: Intel Corporation 82801GBM (ICH7-M) LPC Interface Bridge (rev 02) 0000:00:1f.1 IDE interface: Intel Corporation 82801G (ICH7 Family) IDE Controller (rev 02) 0000:00:1f.2 0106: Intel Corporation 82801GBM/GHM (ICH7 Family) Serial ATA Storage Controllers cc=AHCI (rev 02) 0000:00:1f.3 SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller (rev 02) 0000:02:00.0 Ethernet controller: Intel Corporation 82573L Gigabit Ethernet Controller 0000:03:00.0 Ethernet controller: Atheros Communications, Inc. AR5212 802.11abg NIC (rev 01) 0000:15:00.0 ffff: Ricoh Co Ltd RL5c476 II (rev ff) 0000:15:00.1 ffff: Ricoh Co Ltd R5C552 IEEE 1394 Controller (rev ff) 0000:15:00.2 ffff: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (rev ff)
Summary
What works out of the box
- Network adapter (Intel PRO/1000)
- Graphics adapter and accelerator (Intel GMA 950)
- USB
- Lid switch (LCD off when lid closed)
- Volume control, keyboard light and screen brightness control
- LCD brightness auto-adjusts depending on AC or battery operation
- Fn buttons generate ACPI events (/var/log/acpid)
- Sound, using the snd_hda_intel driver
What doesn't work out of the box
- Suspend to ram
- Suspend to disk
- Wireless
- atheros driver in linux-restricted-modules-2.6.15-20-686 will not work, see below for instructions
Sound
- The sound is very clean, loud enough and there doesn't appear to be any backround machine noise escaping through the card.
Annoyances
- Battery life - With the 8 cell battery Lenovo boasts that it gets about 8 hours of battery life. So far in Linux it is getting about 5-6. Need to mess around with more power saving options.
- The Hitachi serial ATA harddrive makes a faint but noticeable high pitched clicking sound when running off the battery.
What works after installation
Wireless
- Unlike the earlier versions of the X60s this one uses the Atheros driver.
- The LED wireless indicator light does not switch on when wireless is enabled
- The wireless toggle switch does nothing (although it appears to turn the led on momentarily)
compiling the madwifi drivers from source - WORKS :)
- untar the latest drivers from teh madwifi website - http://sourceforge.net/projects/madwifi/
- prepare build environment
apt-get install build-essential apt-get install linux-headers-`uname-r` apt-get install shareutils
- in the madwifi directory build and install the module
make make install modprobe ahc_pci
WPA1 encryption - WORKS :)
- In order for this to work you must compile the wpa_supplicant from source.
- follow these instructions carefully - http://madwifi.org/wiki/UserDocs/802.11i