Thinkpad R61i
![]() |
Thinkpad R61iDa ich seit Februar 2008 im Besitz eines neuen, schicken lenovo Thinkpads R61i bin möchte ich an dieser Stelle einfach ein paar Zeilen zum Linux support dieses Gerätes schreiben. Generell in einem Satz zusammengefasst kann man schreiben Linux, hier Kubuntu 10.10, läuft sehr gut auf diesem Laptop. Was heißt das im einzelnen?
|
Im Thinkpad R61i verwendete Hardware
Im Thinkpad R61i (Modell NG1D6GE) werden nach dem Start von Linux die folgenden PCI Devices gefunden:
00:00.0 Host bridge: Intel Corporation Mobile PM965/GM965/GL960 Memory Controller Hub (rev 0c) 00:02.0 VGA compatible controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller (rev 0c) 00:02.1 Display controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller (rev 0c) 00:1a.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Contoller #4 (rev 03) 00:1a.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #5 (rev 03) 00:1a.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #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 Controller #1 (rev 03) 00:1d.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #2 (rev 03) 00:1d.2 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #3 (rev 03) 00:1d.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #1 (rev 03) 00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev f3) 00:1f.0 ISA bridge: Intel Corporation 82801HEM (ICH8M) LPC Interface Controller (rev 03) 00:1f.1 IDE interface: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) IDE Controller (rev 03) 00:1f.2 SATA controller: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) 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 PRO/Wireless 3945ABG Network Connection (rev 02) 04:00.0 Ethernet controller: Broadcom Corporation NetLink BCM5787M Gigabit Ethernet PCI Express (rev 02) 15:00.0 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev b6)
Nach dem aktivieren des Bluetooth Adapters mittels der Tastenkombination Fn+F5 meldet sich an der USB Schnittstelle noch der Broadcom Blootooth Adapter.
Bus 001 Device 002: ID 0a5c:2110 Broadcom Corp.
Über diese Auflistung muß man sich aber eigentlich keine weiteren Gedanken machen, sie dient mehr der Information für diejenigen die sich für ein solches Gerät zum Einsatz unter Linux interessieren. Kubuntu 10.10 unterstützt die gesamte Hardware fast direkt nach der Installation, manchmal sind aber kleine, manuelle Eingriffe nötig. Die ursprüngliche Beschreibung hier ist tatsächlich mit der ersten Installation von 9.04 entstanden, seitdem aktualisiere ich den Rechner immer. Am besten lädt man sich eine Installations+Live-CD über Bittorrent. Ich habe seinerzeit die Version Karmic Koala heruntergeladen und seitdem bis Maverick Meerkat (10.10) upgedated. Es waren nie Anpassungen des Systems nötig.
Partitionieren
Leider läßt sich die Windows-Steuer nur schwer vermeiden. So wird das Gerät wie folgt partitioniert ausgeliefert: Eine große Partition für "C:" auf der Windows XP vorinstalliert war und eine versteckte Partition auf der sich ein Rettungssystem befindet mit dem man den Ursprungszustand wiederherstellen kann. Mit dem Partitionierer von kubuntu habe ich die große Partition gelöscht und neu unterteilt um ein /, /home und natürlich swap-space zu bekommen. Das Rettungssystem habe ich behalten und auch nicht verschoben oder sonstwie angefasst (ist ja auch nur ca. 6 GB groß)
Device Boot Start End Blocks Id System /dev/sda1 * 1 6322 50781433+ 83 Linux /dev/sda2 13867 14593 5836320 12 Compaq diagnostics Partition 2 does not end on cylinder boundary. /dev/sda3 6323 13714 59376240 83 Linux /dev/sda4 13715 13866 1220940 82 Linux swap / Solaris
So sieht die Paritionierung dann aus wenn man sie sich mit fdisk im installierten System anschaut. Die Platte meldet sich übrigens wie folgt (auf den interessanten Teil gekürzt):
ata1.00: ATA-8: HITACHI HTS542512K9SA00, BB2ZC3HP, max UDMA/133 ata1.00: 234441648 sectors, multi 16: LBA48 NCQ (depth 31/32) ata1.00: configured for UDMA/133 scsi 0:0:0:0: Direct-Access ATA HITACHI HTS54251 BB2Z PQ: 0 ANSI: 5 sd 0:0:0:0: [sda] 234441648 512-byte hardware sectors (120034 MB)
Verwenden
Nach der Installation darf man sich erstmal freuen. Grundsätzlich bootet in der Defaultkonfiguration des Laptops (keine Bios Einstellungen geändert o.ä.) Linux mit dem während der Installation geschrieben grub einwandfrei. Es startet direkt der X-Server in der richtigen Auflösung von 1280x800 Pixeln.
Verbesserungsmöglichkeiten
Nach erster Freude kann man feststellen daß ein paar Kleinigkeiten nicht funktionieren. Meist lässt sich das durch Nachinstallieren einiger Pakete und Auswahl spezieller Optionen erledigen.
Mit Fn+F-Taste erreichbare Funktionen
Damit die mit der Fn-Taste erreichbaren Sonderfunktionen funktionieren sollte man die
Optionen des thinkpad_acpi Moduls überprüfen. Diese sind in der Datei
/etc/modprobe.d/thinkpad_acpi
abgelegt. Mit den folgenden Optionen
funktionieren dann alle Fn-Tastenkombinationen.
options thinkpad_acpi hotkey=enable,0xffffff experimental=1
Der aktuelle Kernel von 10.10 meckert über diese Option allerdings. Also habe ich sie entfernt. Die Funktionen (hell-dunkler, Lautstärke) funktionieren trotzdem.
Im Linux-Kernel sourceverzeichnis befindet sich eine ausführliche Dokumentation in Documentation/thinkpad_acpi.txt.
Folgende Aktionen werden getriggert wenn Fn + die gegebene Taste gedrückt wird.
- F3 (funktioniert) - Zeigt Batterie + CPU Leistungspanel
- F4 (funktioniert in 9.10 nicht) - In Ruhezustand (suspend to ram) wechseln
Mit folgenden Änderungen kann man diese Tastenkombination mit Leben füllen: Erstmal muß eine Daten/etc/acpi/event/ibm-sleep
angelegt werden:# /etc/acpi/events/ibm-sleep # This is called when the user presses the sleep button (Fn+F4) and calls # /etc/acpi/sleep.sh for further processing. event=ibm/hotkey HKEY 00000080 00001004 action=/etc/acpi/sleep.sh
Damit wird der Rechner mit Fn+F4 in den Schlafmodus geschickt. - F5 (funktioniert) - WLAN / Bluetooth zyklisch aktivieren/deaktivieren
- F7 (?) - externen VGA Ausgang aktivieren (noch nicht getestet)
- F8 (NA) - Umschaltung zwischen Trackpoint und Ultranav - entfällt bei meinem Modell
- F9 (funktioniert nicht) - Auswurf der CD
Mit folgenden Änderungen kann man diese Tastenkombination mit Leben füllen. Erzeugen einer Datei/etc/acpi/event/lenovo-eject
mit folgendem Inhalt:# /etc/acpi/events/lenovo-eject # This is called when the user presses the eject button event=ibm/hotkey HKEY 00000080 00001009 action=/etc/acpi/ejectbtn.sh
In/etc/acpi/ejectbtn.sh
habe ich das Originalskript auch modifiziert:#!/bin/bash . /usr/share/acpi-support/key-constants # acpi_fakekey $KEY_EJECTCD eject
So wird das DVD Laufwerk sowohl unter X11 als auch an der Konsole mit Fn+F9 geöffnet. - F12 - Hibernate (noch nicht getestet)
- Pos1 (funktioniert in 9.04) - Das scheint jetzt zu funktionieren. Die letzte kubuntu Version hatte hier Probleme die Helligkeitsverstellung des Displays übers ACPI Interface zu konfigurieren.
- Ende - siehe Pos1
- Bild^ (funktioniert) - Thinklight (die gelbe LED im oberen Displayrahmen) wird ein- und ausgeschaltet.
- Cursortasten (funktionieren) - Diese können zum Steuern von amarok verwendet werden. Hierzu kann über amarok: "Extras->Skript-Verwaltung";"->Weitere Skripte holen" das Skript "Gnome Multimedia keys" installieren. Dann können die Fn-Funktionen auf den Cursortasten zur Bedienung von amarok verwendet werden.
Stromsparen
Zum mobilen Arbeiten ist es hilfreich erstmal die stromverbrauchende Hardware und Prozesse
zur Ermitteln. Hierzu kann man powertop
verwenden. Dieses nette Programm (kann man mittels apt-get install powertop
nachinstallieren)
gibt einem einfache und effiziente Tipps zum Stromsparen.
Sinnvolle Einstellungen sind iwpriv eth1 set_power 5
um den
eingebauten WLAN Controller in den Energiesparmodus zu schalten. Diese
Einstellung ist allerdings mit dem kubuntu Kernel von 8.10 mit Vorsicht zu
genießen (9.04 habe ich nicht getestet). Im Energiesparmodus kommt es vor, daß nach
längerer Zeit (ein bis zwei Stunden) plötzlich der Link verloren geht und sich
keine WLAN Verbindung mehr herstellen lässt.
Eine weitere sinnvolle Einstellung ist echo 5 > /proc/sys/vm/laptop_mode
.
Bild^ und Bildv im Terminal umbelegen
Eine Einstellung die ich bei SUSE Linux immer sehr
praktisch fand ist die Belegung der Bild^ und Bildv Taste mit einer Suche in der Kommandohistory
der Shell. Mit der folgenden Änderung in der Datei /etc/inputrc
bekommt man
dieses Verhalten auch wieder bei kubuntu hin. Hat man keine root-Rechte kann man sich auch
mit einer Datei .inputrc
im Homeverzeichnis behelfen.
# alternate mappings for "page up" and "page down" to search the history "\e[5~": history-search-backward "\e[6~": history-search-forward
Diese Zeilen sind schon vorbereitet, man muß nur das `#' Zeichen am Zeilenanfang entfernen.
Geblinke der WLAN LED abstellen
Manche mögen es als Feature empfinden, ich finde es sehr lästig: Bei Netzwerkverkehr zum oder aus dem WLAN blinkt die WLAN Kontroll LED - das ist sehr irritierend, weil hier die ganze Zeit eine irritierendes Geflacker im Sichtfeld bemerkbar ist.
Update zu 10.10. Der untere Trick funktioniert nicht mehr, da der entsprechende Eintrag unter /sys... fehlt. Man kann jetzt aber einen Modulparameter angeben. Also nun folgende Änderung:
boa:~>cat /etc/modprobe.d/iwl3945.conf options iwlcore led_mode=1
damit hat auch mit Kubuntu 10.10 das nervige geblinke wieder ein Ende.
echo 0 > /sys/class/leds/iwl-phy0\:assoc/brightness
das funktioniert aber nur mit 9.04. Offensichtlich gibt es in 9.10 einen Bug, da wollen nämlich zwei Doppelpunkte geschrieben werden
echo 0 > /sys/class/leds/iwl-phy0\:\:assoc/brightness
Ich habe eine Datei /etc/network/if-up.d/ibm-wireless angelegt die den folgenden Shellcode enthält
#!/bin/sh # . /usr/share/acpi-support/state-funcs if [ -f /sys/class/leds/iwl-phy0\:assoc/brightness ]; then echo 0 > /sys/class/leds/iwl-phy0\:assoc/brightness fi if [ -f /sys/class/leds/iwl-phy0\:\:assoc/brightness ]; then echo 0 > /sys/class/leds/iwl-phy0\:\:assoc/brightness fi
und das Geblinke hat ein Ende, sowohl auf 9.04 als auch auf 9.10.
Knackenden Sound abstellen
Nach der Installation fiel mir auf das aus den Lautsprechern laufend
ein fieses Knacken kommt, sobald man Sound längere Zeit nicht benutzt,
oder wieder benutzt. Das ist ein bekannter Bug und
mit einer kurzen Änderung in /etc/modprobe.d/alsa.conf
habe ich das bei mir abgestellt:
#options snd-hda-intel power_save=10 power_save_controller=N options snd-hda-intel power_save_controller=0
die originale Zeile habe ich auskommentiert und die darunterstehende neue eingegeben. Nach einem reload der alsa module bzw. einem Neustart ist das geknacke weg.