Installing Debian 4.0 (Etch) on a ThinkPad X300

From ThinkWiki
Revision as of 14:26, 30 April 2008 by Script (Talk | contribs) (HDAPS-Fun (Motion sensor): -> tp_smapi)

Jump to: navigation, search

Installation (Network-Install)

Installing from the Debian Netinstall-CDROM worked without any problems. The SSD is recognized as an S-ATA drive using the ahci-driver. The Gigabit-Ethernet-Port works out-of-the-box.

Kernel Update

The Kernel shipped with Debian stable (2.6.18 at the time of writing this) doesn't support many of the features. I manually upgraded it to 2.6.25. The .config can be found here.

WLAN (Intel 4965AGN)

The driver for the wireless lan interface (iwl4965) is included in the Kernel sources. You only need to install the binary firmware from here: [1] (you can install it in stable without problems).

I had problems with WPA-EAP/TTLS using the 2.6.25 drivers, these could be fixed with a fresh driver snapshot from http://linuxwireless.sipsolutions.net/en/users/Download (I used compat-wireless-2008-04-25).

Graphics (Intel GMA965 / X3100)

For graphics you'll need the intel_agp module from a recent kernel as well as xserver-xorg-video-intel (not in stable at the time of writing, get it from testing).

Nothing special in xorg.conf:

  Section "Device"
       Identifier      "Generic Video Card"
       Driver          "intel"
  EndSection

If you want 3D-acceleration and DRI I suggest to use testing instead of stable, because many of the xserver and mesa-packages in stable are not ready, yet.

ACPI

You'll need the thinkpad_acpi module. I had to tweak some settings to make the backlight work:

 modprobe thinkpad_acpi brightness_enable=1 brightness_mode=0

After inserting the module that way, backlight can be controlled using

 echo XX > /sys/class/backlight/thinkpad_screen/brightness 

Where XX is a number between 0 and 15.

Fingerprint Reader

A short test with Thinkfinger showed no problems.

Fan

Unfortunately the fan is spinning almost all the time, haven't found a way around this, yet.

[2008-4-27] The fan's controller turns off or at a low enough speed to be silent (~1800 rpm) when the CPU temp gets below 108 F. It goes back to full speed at around 111 F. At least my system sits around 108-115 F under normal usage. I don't think there's any problem with the fan staying on all the time. It's a tiny fan and air duct and is bound to make noise trying to push any reasonable amount of air. --fritz

HDAPS-Fun (Motion sensor)

The X300 has a motion sensor, but it is not yet recognized by the standard hdaps-module, but if you install Tp smapi (which i suggest, because it provides a lot of information about your battery) it works fine.

Bluetooth

You need to do:

echo enable > /proc/acpi/ibm/bluetooth

And magically, the Bluetooth-Daughterboard appears as an USB device:

Bus 003 Device 003: ID 0a5c:2110 Broadcom Corp.

Sound

Sound works if you build alsa modules yourself:

  • Download latest alsa snapshot from here.
  • Unpack and run:
./configure --with-debug=detect
make
make install
/etc/init.d/alsasound stop
/etc/init.d/alsasound start
  • You may need to modify the last two lines for your distro (or just restart if you're lazy...)

This patch is in the git kernel and won't be committed until 2.6.26, so this is your only option for a good while.

Camera

If you build the Linux UVC drivers from SVN, the cam gets recognized:

Linux video capture interface: v2.00
uvcvideo: Found UVC 1.00 device <unnamed> (17ef:4807)
input: UVC Camera (17ef:4807) as /class/input/input9
usbcore: registered new interface driver uvcvideo
USB Video Class driver (SVN r205)

I didn't try to get any images from it, yet.

In order to build latest uvc driver:

svn checkout svn://svn.berlios.de/linux-uvc/linux-uvc/trunk
cd trunk
make
make install
rmmod uvcvideo
modprobe uvcvideo

You'll want to use a newer version of gstreamer as well ( > 0.10.15)

Some interesting facts

# lspci 
00:00.0 Host bridge: Intel Corporation Mobile Memory Controller Hub (rev 0c)
00:02.0 VGA compatible controller: Intel Corporation Mobile Integrated Graphics Controller (rev 0c)
00:02.1 Display controller: Intel Corporation Mobile Integrated Graphics Controller (rev 0c)
00:19.0 Ethernet controller: Intel Corporation Unknown device 1049 (rev 03)
00:1a.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI #4 (rev 03)
00:1a.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI #5 (rev 03)
00:1a.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI #2 (rev 03)
00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio Controller (rev 03)
00:1c.0 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 1 (rev 03)
00:1c.1 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 2 (rev 03)
00:1c.2 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 3 (rev 03)
00:1d.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI #1 (rev 03)
00:1d.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI #2 (rev 03)
00:1d.2 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI #3 (rev 03)
00:1d.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI #1 (rev 03)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev f3)
00:1f.0 ISA bridge: Intel Corporation Mobile LPC Interface Controller (rev 03)
00:1f.1 IDE interface: Intel Corporation Mobile IDE Controller (rev 03)
00:1f.2 SATA controller: Intel Corporation Mobile SATA AHCI Controller (rev 03)
00:1f.3 SMBus: Intel Corporation 82801H (ICH8 Family) SMBus Controller (rev 03)
03:00.0 Network controller: Intel Corporation Unknown device 4230 (rev 61)
# lsusb 
Bus 007 Device 001: ID 1d6b:0001  
Bus 006 Device 001: ID 1d6b:0001  
Bus 005 Device 001: ID 1d6b:0001  
Bus 004 Device 001: ID 1d6b:0001  
Bus 003 Device 002: ID 0483:2016 SGS Thomson Microelectronics Fingerprint Reader
Bus 003 Device 001: ID 1d6b:0001  
Bus 002 Device 002: ID 17ef:4807  
Bus 002 Device 001: ID 1d6b:0002  
Bus 001 Device 001: ID 1d6b:0002 
# cat /proc/cpuinfo (at 800 Mhz)
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 15
model name      : Intel(R) Core(TM)2 Duo CPU     L7100  @ 1.20GHz
stepping        : 11
cpu MHz         : 800.000
cache size      : 4096 KB
physical id     : 0
siblings        : 2
core id         : 0
cpu cores       : 2
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 10
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 lm constant_tsc arch_perfmon pebs  bts pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr lahf_lm ida
bogomips        : 2421.98
clflush size    : 64
processor       : 1
vendor_id       : GenuineIntel
cpu family      : 6
model           : 15
model name      : Intel(R) Core(TM)2 Duo CPU     L7100  @ 1.20GHz
stepping        : 11
cpu MHz         : 800.000
cache size      : 4096 KB
physical id     : 0
siblings        : 2
core id         : 1
cpu cores       : 2
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 10
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 lm constant_tsc arch_perfmon pebs bts pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr lahf_lm ida
bogomips        : 2394.01
clflush size    : 64
# cat /proc/scsi/scsi 
Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
  Vendor: ATA      Model: SAMSUNG MCCOE64G Rev: PS10
  Type:   Direct-Access                    ANSI  SCSI revision: 05
Host: scsi3 Channel: 00 Id: 00 Lun: 00
  Vendor: MATSHITA Model: DVD-RAM UJ-844   Rev: RC02
  Type:   CD-ROM                           ANSI  SCSI revision: 05
# hdparm -t /dev/sda
/dev/sda:
 Timing buffered disk reads:  270 MB in  3.01 seconds =  89.74 MB/sec

References