Installing Debian 5.0 (Lenny) on a ThinkPad X201i

From ThinkWiki
Jump to: navigation, search

HW Overview

Lenovo ThinkPad X201, model 3323BFG
ThinkPad BIOS 6QET47WW (1.17 ), EC 6QHT29WW-1.10
$ lspci 
00:00.0 Host bridge: Intel Corporation Device 0044 (rev 02)
00:02.0 VGA compatible controller: Intel Corporation Device 0046 (rev 02)
00:16.0 Communication controller: Intel Corporation Ibex Peak HECI Controller (rev 06)
00:19.0 Ethernet controller: Intel Corporation Device 10ea (rev 06)
00:1a.0 USB Controller: Intel Corporation Ibex Peak USB2 Enhanced Host Controller (rev 06)
00:1b.0 Audio device: Intel Corporation Ibex Peak High Definition Audio (rev 06)
00:1c.0 PCI bridge: Intel Corporation Ibex Peak PCI Express Root Port 1 (rev 06)
00:1c.3 PCI bridge: Intel Corporation Ibex Peak PCI Express Root Port 4 (rev 06)
00:1c.4 PCI bridge: Intel Corporation Ibex Peak PCI Express Root Port 5 (rev 06)
00:1d.0 USB Controller: Intel Corporation Ibex Peak USB2 Enhanced Host Controller (rev 06)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev a6)
00:1f.0 ISA bridge: Intel Corporation Ibex Peak LPC Interface Controller (rev 06)
00:1f.2 SATA controller: Intel Corporation Ibex Peak 6 port SATA AHCI Controller (rev 06)
00:1f.3 SMBus: Intel Corporation Ibex Peak SMBus Controller (rev 06)
00:1f.6 Signal processing controller: Intel Corporation Ibex Peak Thermal Subsystem (rev 06)
02:00.0 Network controller: Intel Corporation Device 4239 (rev 35)
ff:00.0 Host bridge: Intel Corporation Device 2c62 (rev 02)
ff:00.1 Host bridge: Intel Corporation Device 2d01 (rev 02)
ff:02.0 Host bridge: Intel Corporation Device 2d10 (rev 02)
ff:02.1 Host bridge: Intel Corporation Device 2d11 (rev 02)
ff:02.2 Host bridge: Intel Corporation Device 2d12 (rev 02)
ff:02.3 Host bridge: Intel Corporation Device 2d13 (rev 02)
$ lsusb 
Bus 002 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 006: ID 0a5c:217f Broadcom Corp. Bluetooth Controller
Bus 001 Device 003: ID 147e:2016 Upek Biometric Touchchip/Touchstrip Fingerprint Sensor
Bus 001 Device 005: ID 17ef:4816 Lenovo.
Bus 001 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
$ cat /proc/cpuinfo
4x CPU:
processor       : 1
vendor_id       : GenuineIntel
cpu family      : 6
model           : 37
model name      : Intel(R) Core(TM) i3 CPU       M 370  @ 2.40GHz
stepping        : 5
cpu MHz         : 933.000
cache size      : 3072 KB
physical id     : 0
siblings        : 2
core id         : 0
cpu cores       : 1
apicid          : 1
initial apicid  : 1
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 11
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr 
sse sse2 ss ht tm pbe nx rdtscp lm constant_tsc arch_perfmon pebs bts xtopology nonstop_tsc aperfmperf pni dtes64 
monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 popcnt lahf_lm arat tpr_shadow vnmi flexpriority ept vpid
bogomips        : 4788.49
clflush size    : 64
cache_alignment : 64
address sizes   : 36 bits physical, 48 bits virtual
# hdparm -tT /dev/sda
/dev/sda:
Timing cached reads:   3834 MB in  2.00 seconds = 1918.04 MB/sec
Timing buffered disk reads:  260 MB in  3.01 seconds =  86.44 MB/sec

USB Boot

Distribution kernel in Debian Lenny 2.6.26-2-686 does not want to boot. Boot works ok with the kernel from backports (2.6.32-bpo.5-686)

Devices support

Video

NOTE!
Intel_HD_Graphics on Core i3 is not recognized - and probably will not work with native intel xorg driver in Lenny. intel xorg driver supports it since version 2.9.1, but it also requires xorg version 1.6 or newer while Lenny has only version 1.4.2 -> upgrade to Squeeze should help (not tested)
$ cat /var/log/Xorg.0.log.old 
(--) PCI:*(0:2:0) Intel Corporation unknown chipset (0x0046) rev 2, Mem @ 0xf2000000/22, 0xd0000000/28, I/O @ 0x1800/3

xorg then detecs just a general vesa driver: it uses the correct resolution, but has no video acceleration, no external monitor, no dynamic resolution change

Brightness control

Display brightness control with Vesa driver does not work (neither keys nor Gnome controls). thinkpad_acpi requries an option to enable it (modprobe thinkpad_acpi brightness_enable=1) and the /proc/acpi/ibm/brightness appears. Brightness can be then controlled via Gnome controls or

#  echo down > /proc/acpi/ibm/brightness
#  echo up > /proc/acpi/ibm/brightness

FnHome/End keys do not work.

Intel Wireless Display

All Core i3 processors have a nice feature to display the video over WiFi connection, see e.g. http://www.intel.com/consumer/products/technology/wirelessdisplay.htm, which is even not mentioned in the X201i specifications. However it needs some software support and it seems none at least thinks about it for Linux (http://scoop.intel.com/2010/06/thinking-about-getting-an-intelr-wireless-display-pc-get-the-netgear-push2tv-adapter-for-only-50.php , http://www.google.com/search?q=linux+%22intel+wireless+display%22)

WLAN

module iwlagn + firmware iwlwifi-6000-4.ucode ie. from firmware-iwlwifi_0.27_all.deb (http://packages.debian.org/sid/firmware-iwlwifi)

If firmware is not installed, it complains in the syslog

iwlagn 0000:02:00.0: iwlwifi-6000-3.ucode firmware file req failed: -2

Enable/disable via FnF5 or via network-manager

Ethernet

module e1000e, works ok

Sound

module snd-hda-intel works ok, incl. headphones

Bluetooth

works ok, enable/disable only via # echo "enable" > /proc/acpi/ibm/bluetooth # echo "disable" > /proc/acpi/ibm/bluetooth

ThinkLight

works ok, turn on/off via FnPgUp or /proc/acpi/ibm/light

WebCam

[   54.179306] uvcvideo: Found UVC 1.00 device Integrated Camera (17ef:4816)
[   54.180708] usbcore: registered new interface driver uvcvideo

works ok (ie. luvcview)

TouchPad/TrackPoint

work both ok, incl. touchpoint page scrolling on the right side

[   54.653913] Synaptics Touchpad, model: 1, fw: 7.4, id: 0x1e0b1, caps: 0xd047b1/0xb40000/0xa0000
[   54.706403] input: SynPS/2 Synaptics TouchPad as /devices/platform/i8042/serio1/input/input6
[   61.530602] IBM TrackPoint firmware: 0x0e, buttons: 3/3
[   61.808056] input: TPPS/2 IBM TrackPoint as /devices/platform/i8042/serio1/serio2/input/input8

Keyboard

Hint: In Gnome select keyboard type IBM ThinkPad - special keys like "next/prev page" then work

Check the page How to get special keys to work to setup other special and/or Fn keys.

Fingerprint reader

not tested

Fixed line modem

not tested

Security Chip

not tested

Active Protection System

not tested

Card Reader

works ok (tested SD card)

Power Management

Suspend to RAM

Not working, probably depends on video driver (suspends, but does not resume)

Suspend to disk

Works out of the box

acpid

Acpid does not work without /proc/acpi/event (2.6.29+), force install of new version from lenny backports (http://packages.debian.org/lenny-backports/acpid)

cpufreq

Frequence scaling via cpufreq ok

$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
2399000 2266000 2133000 1999000 1866000 1733000 1599000 1466000 1333000 1199000 1066000 933000

CPU enable/disable

CPU enabling/disabling works via

# echo 0 > /sys/devices/system/cpu/cpu2/online
# echo 1 > /sys/devices/system/cpu/cpu2/online

but even turning off 3 of them does not seem to influence the power consumption when running on battery.