Table of Contents

Lenovo Thinkpad X60s

This place serves as documentation for my Lenovo Thinkpad X60s Setup under Linux.

I have a X60s 1704-69U (aka 170469U). I'm using Gentoo (currently 2006.0)

Until organized, it'll just be a wild collection of bits and pieces.

Suspend-to-disk implementations explained and compared: http://suspend2.net/features.html#compare
Knock-based commands for your Linux laptop: http://www-128.ibm.com/developerworks/linux/library/l-knockage.html?ca=dgr-lnxw01Knock-Knock
Primary Resource for Linux on Thinkpads: http://www.thinkwiki.org
Setting up power management stuff under Gentoo: http://www.gentoo.org/doc/en/power-management-guide.xml
HOWTO Software Suspend v2 on Gentoo: http://gentoo-wiki.com/HOWTO_Software_Suspend_v2
The madwifi driver for the built-in Atheros-based WLAN card does not seem to support powermanagement yet: http://madwifi.org/ticket/447
Suspend/Resume Problems with SATA/AHCI: http://www.thinkwiki.org/wiki/Problems_with_SATA_and_Linux

Kernel Configs

CPU

Packages:
Kernel Modules:
Programs:

Ethernet

Packages:
Kernel Modules: e1000
Programs: ifconfig route

I seem to have a problem with latency with the e1000. SSH connections even to machines directly on the same switch have a very noticeable lag from typing to displaying.

lspci says:

02:00.0 Ethernet controller: Intel Corporation 82573L Gigabit Ethernet Controller
03:00.0 Ethernet controller: Atheros Communications, Inc. AR5212 802.11abg NIC (rev 01)
Packages: madwifi-ng madwifi-ng-tool
Kernel Modules: ath_pci ath_hal ath_sample_rate wep wep_scan_sta wlan_wep
Programs: iwconfig ifconfig wlanconfig iwlist route

IDE/ATA/SATA Harddrive / Optical Drive

TODO
lspci says:

00:1f.1 IDE interface: Intel Corporation 82801G (ICH7 Family) IDE Controller (rev 02)
00:1f.2 SATA controller: Intel Corporation 82801GBM/GHM (ICH7 Family) Serial ATA Storage Controller AHCI (rev 02)

Harddisk

The Harddisk is connected to the SATA bus.

My harddisk showed a frequent “clicking”. One of the ways (probably not the best) to get rid of this is to disable Power Management on the drive:

# hdparm -B 255 /dev/sda

/dev/sda:
 setting Advanced Power Management level to disabled

CD / DVD Drive

The CD-R/RW / DVD-R/+R/-RW/+RW/-RAM optical drive (aka. Multi-Burner) in the X6 Ultrabase Docking Station is connected to the regular IDE controller, and appears as /dev/hda

The Harddisk is connected to the SATA bus.

Packages:
Kernel Modules: ahci (compiled into kernel)
Programs:

Framebuffer Stuff

TODO
I'd like to be able to watch videos and view images without X under the console, so I want to use mplayer and an image viewer with fbdev.

Packages:
Kernel Modules:
Programs:

X11

The X60s has a Intel 855GM Graphics controller. lspci says:

00:02.0 VGA compatible controller: Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller (rev 03)
00:02.1 Display controller: Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller (rev 03)

I've built Xorg with i810, vesa, fbdev and vga drivers enabled. I use i810 as xorg driver.

DRI now works (but maybe not 100%). I had to disable drm in the kernel completetly. Then I rebuilt x11-drm (version 20060608). There were still problems because the drm.ko module wasn't copied to /lib/modules/`uname -r`/x11-drm along with the others (eg. i810.ko, i915.ko). To quickly fix it, I re-emerged x11-drm, froze the build process with Ctrl-s after drm.ko was done building, and copied that module to its proper place, then I let the build process resume with Ctrl-q.

Packages:
Kernel Modules:
Programs:

Soundcard

TODO
lspci says:

00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 02)
Packages: alsa-headers alsa-utils alsa-lib
Kernel Modules: snd-hda-intel
Programs: alsamixer alsactl …

SMBus

TODO
lspci says:

00:1f.3 SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller (rev 02)

aka. System Management Bus, a I2C derived bus. Often used to connect temperature sensors to.

Packages:
Kernel Modules:
Programs:

LPC Bus

TODO
lspci says:

00:1f.0 ISA bridge: Intel Corporation 82801GBM (ICH7-M) LPC Interface Bridge (rev 02)

according to http://en.wikipedia.org/wiki/Low_Pin_Count the LPC Bus is a Low Pin Count Bus that “legacy” devices like parallel/serial port, keyboard, mouse, …

Packages:
Kernel Modules:
Programs:

Parallel Port

TODO
The parallel port is part of the X6 Ultrabase docking station.

Packages:
Kernel Modules:
Programs:

Serial Port

TODO
The serial port is part of the X6 Ultrabase docking station.

Packages:
Kernel Modules:
Programs:

PC-Card Slot

TODO
lspci says:

15:00.0 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev b4)
Packages:
Kernel Modules:
Programs:

Firewire

TODO
lspci says:

15:00.1 FireWire (IEEE 1394): Ricoh Co Ltd R5C552 IEEE 1394 Controller (rev 09)
Packages:
Kernel Modules:
Programs:

USB

TODO
fingerprint reader, bluetooth, wwan modem are USB-based, so they are only visible if usb-uhci is loaded. lsusb shows devices on the USB bus:

Bus 005 Device 001: ID 0000:0000  
Bus 004 Device 004: ID 0a5c:2110 Broadcom Corp. 
Bus 004 Device 003: ID 0483:2016 SGS Thomson Microelectronics Fingerprint Reader
Bus 004 Device 001: ID 0000:0000  
Bus 003 Device 001: ID 0000:0000  
Bus 002 Device 002: ID 1199:0218 Sierra Wireless, Inc. 
Bus 002 Device 001: ID 0000:0000  
Bus 001 Device 001: ID 0000:0000  
Packages:
Kernel Modules:
Programs:

Bluetooth

TODO
connected to USB. http://www.gentoo.org/doc/en/bluetooth-guide.xml

emerge bluez-libs bluez-utils
echo enable > /proc/acpi/ibm/bluetooth
/etc/init.d/bluetooth start
Packages: bluez-utils
Kernel Modules: usb stuff, bluetooth, hci_usb, l2cap, rfcomm
Programs: hciconfig,hcitool,rfcomm,l2ping

Important: It seems that the wireless switch (front center bottom) has to be active for bluetooth to work, while WLAN doesn't care about it at all.

Links:
http://thinkwiki.org/wiki/How_to_setup_Bluetooth

WWAN / WAN / EV-DO Wireless Modem

TODO
connected to USB.

Packages:
Kernel Modules:
Programs:

Fingerprint Reader

TODO
connected to USB.

Packages:
Kernel Modules:
Programs:

Inrared / IrDA

TODO

Packages: irda-utils
Kernel Modules: nsc-ircc
Programs:

Links:
http://irda.sourceforge.net

SD Card Reader

WORKS
The SD card reader is connected to the pci bus (check with lspci):

15:00.2 Class 0805: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (rev 18)
Packages:
Kernel Modules: sdhci mmc_core mmc_block
Programs:

Starting with recent kernels of the 2.6.17 series, sdhci is included in the official kernel. Older kernels need to be patched.

If the above modules are loaded, this should suffice to mount the card:

mount /dev/mmcblk0p1 /mnt/mmc

I tried it with a cheapo 128MB MMC card.

Links:
http://www.thinkwiki.org/wiki/How_to_get_the_internal_SD-CARD_working

HDAPS

Hard Disk Active Protection System
http://thinkwiki.org/wiki/How_to_protect_the_harddisk_through_APS
http://thinkwiki.org/wiki/Tp_smapi

Packages: hdapsd, tp_smapi
Kernel Modules: thinkpad_ec, hdaps, tp_smapi (all three from tp_smapi)
Programs: hdapsd

emerge --config =hdapsd-20060409 says:

  * We don't have a patch for kernel 2.6.18 yet

Apparently, one of the above three modules probits the resume from suspend-to-ram.

Power Management

Suspend-to-RAM

Packages:
Kernel Modules:
Programs:

Suspend to Disk

TODO
(I'm still reading up on it, not doing much yet)

Packages:
Kernel Modules:
Programs: