IBM Lenovo Thinkpad R60
Aus Gentoo Linux Wiki
Inhaltsverzeichnis |
[Bearbeiten] Spezifikationen: IBM/Lenovo ThinkPad R60 UL1HRGE
| Modell | UL1HRGE | 2.6.21-gentoo - 2.6.22-gentoo-r8 |
2.6.24-gentoo |
|---|---|---|---|
| CPU | Intel Centrino Core 2 Duo: 2x T5600 1.83 GHz | unterstützt | unterstützt |
| Intel VT | unterstützt | unterstützt | |
| Chipsatz | Intel Corporation Mobile 945GM/PM/GMS/940GML and 945GT Express | unterstützt | unterstützt |
| RAM | 2048 MB PC2-5300 DDR2 SDRAM FSB: 667MHz | unterstützt | unterstützt |
| CPU | Intel Centrino Core 2 Duo: 2x T5600 1.83 GHz | unterstützt | unterstützt |
| Batterie und ACPI | 6 Zellen Lithium-Ion Akku | unterstützt | unterstützt |
| HDD | 120GB Serial-ATA | unterstützt | unterstützt |
| Display | 15 Zoll SXGA+ TFT 1400x1050 | unterstützt | unterstützt |
| Grafikchip | ATI Radeon Mobility X1400 / 128MB GDDR RAM / PCI Express | Treiber verfügbar | Treiber verfügbar |
| Netzwerk LAN | Broadcom NetXtreme BCM5751M Gigabit Ethernet PCI Express | unterstützt | unterstützt |
| Netzwerk WLAN | Intel Corporation PRO/Wireless 3945ABG | Treiber verfügbar | unterstützt |
| Bluetooth | Broadcom BCM2045B | unterstützt | unterstützt |
| Firewire | Texas Instruments Unknown device | unterstützt | unterstützt |
| zusätzliche Schnittstellen | 1x PCI und 1x PCI Express | unterstützt / PCIe nicht getestet | unterstützt / PCIe nicht getestet |
| DVD+/-RW | DVD Recordable 24x EIDE (/dev/cdrom) | unterstützt | unterstützt |
| Audio | Intel High Definition Audio | unterstützt | unterstützt |
| ThinkVantage | IBM Active Protection System | unterstützt | unbekannt |
| Thinklight | unterstützt | unterstützt | |
| Sondertasten | Konfiguration nötig | Konfiguration nötig |
[Bearbeiten] Allgemein
Dieser Beitrag sollte auch für das IBM/LENOVO ThinkPad R60 Modell UL1DXGE anwendbar sein, das sich unter anderem nur durch eine kleinere Festplatte und weniger RAM unterscheidet.
Auf andere Modelle sollten Teile wie HDAPS, WLAN, Sound analog verwendbar sein.
Mit dem oben erwähnten Prozessor ist auch eine 64Bit Installation möglich.
[Bearbeiten] Vor der Installation
Da bei den ThinkPads keine Recovery CDs mitgeliefert werden, sollte man diese erstellen bevor man Gentoo installiert. Inwiefern die Recovery Partition nach dem Partitionieren noch nutzbar ist kann ich nichts sagen. Ich beziehe mich hier auf eine Linux-Only Installation.
Wenn man die Recovery Partition nicht verändert, kann man im Bootloader einen Eintrag für diese erstellen die genauso aussieht wie für eine normale WindowsXP Partition. Rescue & Recovery kann man so ganz normal starten.
[Bearbeiten] Installation
Die Installation kann gemäß dem Gentoo Linux x86 Handbuch und der Minimal CD x86 2008.0 durchgeführt werden. Für eine 64bit Installation benötigt man die amd64 LiveCD und das Gentoo Linux amd64 Handbuch. Auf die Besonderheiten für das ThinkPad wird dann in den folgenden Abschnitten eingegangen.
Der Serial-ATA Controller, die Netzwerk-Interface für Kabel und Framebuffer funktionieren einwandfrei mit der Minimal LiveCD. Die CFLAGS der Datei /etc/make.conf sollten für 32 bit so gesetzt sein:
| Datei: /etc/make.conf |
CHOST="i686-pc-linux-gnu"
CFLAGS="-march=prescott -O2 -pipe -fomit-frame-pointer"
CXXFLAGS="${CFLAGS}"
|
und für 64 bit:
| Datei: /etc/make.conf |
CHOST="x86_64-pc-linux-gnu"
CFLAGS="-march=nocona -O2 -pipe"
CXXFLAGS="${CFLAGS}"
|
Das ist alles auch im Gentoo Wiki Safe-CFlags nachzulesen.
[Bearbeiten] Kernel Konfiguration
Der in dieser Anleitung verwendete Kernel ist der 2.6.21-gentoo aus den gentoo-sources-2.6.21 kompiliert.
| Linux Kernel Configuration: IBM Lenovo Thinkpad R60 (2.6.21-gentoo) |
Processor type and features -->
[*] Symmetric multi-processing support
Subarchitecture Type (PC-compatible) --->
Processor family (Core 2/newer Xeon) --->
(2) Maximum number of CPUs (2-255)
[ ] SMT (Hyperthreading) scheduler support
[*] Multi-core scheduler support
# Normale ACPI Einstellungen + natürlich die Thinkpad Extras
Power management options (ACPI, APM) --->
ACPI (Advanced Configuration and Power Interface) Support --->
ACPI (Advanced Configuration and Power Interface) Support --->
<*> IBM ThinkPad Laptop Extras
# CPU Frquenzskalierung (damit man beim Akkubetireb Energie sparen kann)
CPU Frequency scaling --->
[*] CPU Frequency scaling
<*> CPU frequency translation statistics
Default CPUFreq governor (userspace) --->
<*> 'performance' governor
<*> 'powersave' governor
<*> 'ondemand' cpufreq policy governor
<*> 'conservative' cpufreq governor
# Unterstützung für PCI Express, wird u.a. für die Grafik Karte benötigt
Bus options (PCI, PCMCIA, EISA, MCA, ISA) --->
[*] PCI support
[*] PCI Express support
# Da eine SATA Festplatte verbaut ist braucht man natürlich auch SATA Treiber
Device Drivers -->
Serial ATA (prod) and Parallel ATA (experimental) drivers --->
<*> ATA device support
<*> AHCI SATA support
<*> Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support
|
[Bearbeiten] Netzwerk
[Bearbeiten] Kabelgebundenes LAN
Für das kabelgebundene Netzwerkinterface von Broadcom gibt es einen im Kernel implementierten Treiber:
| Linux Kernel Configuration: LAN |
Device Drivers -->
Network device support --->
[*] Network device support
Ethernet (1000 Mbit) --->
<*> Broadcom Tigon3 support
|
[Bearbeiten] Wireless LAN - IPW3945
siehe IPW3945
[Bearbeiten] Bluetooth
Zuerst muß der Kernel konfiguriert werden:
| Linux Kernel Configuration: Linux Kernel 2.6.21-gentoo |
Networking -->
<*> Bluetooth subsystem support --->
<*> HCI USB driver
|
Dann benötigt man für die entsprechenden Funktionen halt noch die Module. Steuern lässt sich das Bluetooth-Interface folgendermaßen:
[Bearbeiten] Aktivieren
[Bearbeiten] Deaktivieren
Weiterführende Informationen:
[Bearbeiten] Grafik
[Bearbeiten] Framebuffer
[Bearbeiten] vesafb
Für den vesafb müssen folgende Kernel-Einstellungen gemacht werden:
| Linux Kernel Configuration: Framebuffer |
Device Drivers -->
Graphics support --->
<*> Support for frame buffer devices
<*> VESA VGA graphics support
VESA driver type (vesafb) --->
Console display driver support --->
<*> Framebuffer Console support
|
Der Kernel Parameter für 1400x1050 mit 16Bit Farbtiefe vga=837. Für Weiteres und Genaueres im Handbuch nachschlagen: Gentoo Handbuch, 1. Teil, 10. Kapitel
[Bearbeiten] vesafb-tng
bis jetzt noch nicht zum laufen gebracht mit 1400x1050
[Bearbeiten] radeonfb
noch nicht getestet
[Bearbeiten] Xorg-X11 (vesa)
Die folgenden Schritte sind jeweils die Basis für die anderen Treiber in den Unterpunkten.
Zuerst einfach mit
eine xorg.conf erstellen.
Bei der Keyboard Variant "nodeadkeys" angeben, angeben, damit alle Zeichen und Tastenkombinationen funktionieren.
Bei der Frequenz und Synchronisation des TFT funtioniert
10 31.5 - 82.0; Monitor that can do 1280x1024 @ 76 Hz
und
4 40-150
Abschließend den Treiber auf vesa setzen:
| Datei: /etc/X11/xorg.conf |
Section "Device" Identifier "My Video Card" Driver "vesa" VideoRam 131072 EndSection |
und die Auflösung heraufsetzen:
| Datei: /etc/X11/xorg.conf |
Section "Screen"
Identifier "Screen 1"
Device "My Video Card"
Monitor "My Monitor"
DefaultDepth 16 # 24Bit noch nicht getestet
Subsection "Display"
Depth 16
Modes "1400x1050" "1280x1024" "1024x768" "800x600" "640x480"
ViewPort 0 0
EndSubsection
EndSection
|
[Bearbeiten] ATI-Treiber (proprietär)
Die propritären ATI-Treiber sind immer dann zu empfehlen, wenn man entweder maximale Leistung oder minimalen Stromverbrauch erzielen möchte. Beides können sie besser als die freien Xorg Radeon Treiber (diese sind jedoch stabiler).
Wenn die Kernelversion wechselt, muß meistens auch ein neuer ATI-Treiber installiert werden. Fehleranfällig sind neue Versionen meistens bei Hibernate und 3D. Falls also ein neuer ATI-Treiber fällig ist, dann immer prüfen, ob nach alles funktioniert.
Meistens muß man eine Version aus dem unstable tree installieren:
Den Treiber nun emergen:
als nächstes wird mit
eine initiale xorg.conf angelegt.
Nun auf das ATI OpenGL Subsystem wechseln:
Damit direct rendering funktioniert muss noch folgende Sektion hinzugefügt werden:
| Datei: /etc/X11/xorg.conf |
Section "dri"
Mode 0666
EndSection
|
Folgende optionale Einstellungen sind auch noch recht sinnvoll:
| Datei: /etc/X11/xorg.conf |
Section "Device"
Identifier "aticonfig-Device[0]"
Driver "fglrx"
Option "VideoOverlay" "on"
Option "UseFastTLS" "2"
Option "EnablePrivateBackZ" "on"
EndSection
|
Ab der ATI-Treiber Version 8.26 gibt es den atieventsd. Dieser Daemon sorgt dafür, dass die Grafikkarte bei Batteriebetrieb und zu hoher Hitze runtertaktet. Was im Batteriemodus wieder Strom spart.
Weitere Informationen:
[Bearbeiten] radeon (Open Source)
Es gibt zwei radeon Open Source Treiber, zum einen der radeon und zum anderen der radeonhd Treiber. Der radeonhd Treiber wurde von Novell und AMD ins Leben gerufen, weil die Entwicklung des radeon Treibers für neuere Grafikkarten zu langsam verlief.
Derzeit unterstützt der radeon Treiber auch eine Reihe neuerer Karten unter anderem auch die X1400.
Dieser Treiber ist dem radeonhd Treiber auf jeden Fall vorzuziehen. Es wird in diesem Wiki nur die Einrichtung des radeon Treibers erklärt.
Als erstes das Paket x11-drivers/xf86-video-ati in der Verion 6.8.0 oder höher installieren. Dazu muß es derzeit noch demaskiert werden:
und jetzt emergen:
Als nächstes muß noch die xorg.conf angelegt werden. Das geschieht mittels
Für weiter Informationen kann man die X.org Seite konsultieren oder bei den Kollegen von Ubuntu nachschauen.
[Bearbeiten] Sound
Um den Sound einzurichten gibt es zwei Möglichkeiten:
- Benutzung der Kernel-Treiber
- Benutzung der externen ALSA Module
Punkt 1 ist vorzuziehen. Punkt 2 macht nur Sinn, wenn man einen Sound Chip hat, der von den Kernel internen Treibern noch nicht unterstützt wird.
[Bearbeiten] Benutzung der Kernel-Treiber
Für den Intel 82801G High Definition Audio Chip wird das Alsa-Modul hda-intel benötigt.
| Linux Kernel Configuration: Sound |
Device Drivers -->
Sound --->
<*> Sound card support
Advanced Linux Sound Architecture --->
<*> Advanced Linux Sound Architecture
PCI devices --->
<*> Intel HD Audio
# Das Open Sound System kann man abwählen, ALSA übernimmt es für alte Programme mit
Open Sound System --->
< > Open Sound System (DEPRECATED)
|
Weiter geht es mit der Installationen der alsa-utils:
In diesem Packet ist das Programm
mit dem man die Kanäle unmuted und die Lautstärke regelt. Als letzten Schritt starten wir den alsasound Daemon
und sorgen für automatisches starten
Fertig!
[Bearbeiten] Benutzung der externen ALSA Module
In der make.conf fügt man folgende Zeile noch hinzu:
| Datei: /etc/make.conf |
ALSA_CARDS="hda-intel" |
Dann installiert man die ALSA-Treiber
abschließend noch konfigurieren
Jetzt noch mit
die Kanäle unmuten. Sollte dannach kein Sound funktionieren könnte folgendes Workaround helfen:
update-modules /etc/init.d/alsasound restart
- Quelle Gentoo-Forum
[Bearbeiten] Fehler- und Problembehebung
Sollten Fehlermeldungen wie
device: default can't be opened for playback (Invalid argument) The sound server will continue, using the null output device.
oder
[AO OSS] Can't set audio device /dev/dsp to s16le output, trying s16le...
auftreten, dann ist das interne Modem im BIOS wahrscheinlich deaktiviert. Dadurch kann die Soundkarte unter Umständen nicht richtig funktionieren, obwohl alle Soundmodule korrekt geladen wurden.
Dieser Fehler macht sich auch generell dadurch bemerkbar das man in alsamixer alles einstellen kann, aber trotzdem kein Sound geht.
[Bearbeiten] Power Management
Die ACPI-Unterstüzung ist dank im Kernel implementierter IBM-ACPI (siehe: Kernel Konfiguration) Module kein Problem.
Zusätzlich benötigt man noch den ACPI-Daemon acpid
/etc/init.d/acpid start rc-update add acpid default
Sinnvoll sind auch noch das Packet acpi mit dem man Informationen, wie beispielsweise Temperatur und Batteriestatus, abfragen kann.
Beispiel:
Weiterführende Informationen:
- Umfangreiche Anleitung für Power Management von gentoo.org
- ThinkWiki.org HowTo make ACPI work
- lesswatts.org
[Bearbeiten] CPU Frequenzskalierung
Im Abschnitt Kernel Konfiguration haben wir den Default CPUFreq governor auf userspace gestellt, also müssen wir jetzt auch dafür sorgen das ein userspace-Programm die Regelung der CPU Frequenz übernimmt. Weiterführende Informationen:
[Bearbeiten] CPUFreqd
Das Tool CPUFreqd lässt sich einfach und problemlos installieren und betreiben:
/etc/init.d/cpufreqd start rc-update add cpufreqd default
In der Datei /etc/cpufreqd.conf können sämtliche Einstellungen vorgenommen werden.
Weiterführende Informationen:
[Bearbeiten] Eingabegeräte
Grundsätzlich funktionieren Touchpad und Trackpoint auch ohne weitere Konfiguration. Nur für Extrafunktionen und bei Problemen können folgende Konfigurationen verwendet werden:
[Bearbeiten] Touchpad
Um das Touchpad einzubinden, diesen Konfigurationsblock in die /etc/X11/xorg.conf einfügen:
| Datei: /etc/X11/xorg.conf |
Section "InputDevice" Identifier "Touchpad" Driver "synaptics" Option "Protocol" "IMPS/2" Option "Device" "/dev/input/mouse0" Option "SHMConfig" "on" EndSection |
Zusätzlich gibt es jeweils für Gnome und KDE noch eine GUI zum komfortablen Konfigurieren des Touchpads. Für KDE:
Für Gnome:
[Bearbeiten] Trackpoint
Um den Trackpoint einzubinden, diesen Konfigurationsblock in die /etc/X11/xorg.conf einfügen:
| Datei: /etc/X11/xorg.conf |
Section "InputDevice" Identifier "Trackpoint" Driver "mouse" Option "Protocol" "IMPS/2" Option "Device" "/dev/input/mouse1" EndSection |
[Bearbeiten] Sondertasten
Die Tasten für Display-Helligkeit und die Tastaturbeleuchtung funktionieren ohne weitere Konfiguration.
[Bearbeiten] Tasten mit Xmodmap
Einige spezielle Tasten lassen sich mit Xmodmap konfigurieren. Dazu erstellt man in seinem Home-Verzeichnis ~/.Xmodmap, desweiteren benötigt man das Programm xmodmap, wenn man es noch nicht installiert hat kann man dies mit folgendem Befehl nachholen:
Und hier eine mögliche ~/.Xmodmap für die Tasten die über FN und die Pfeiltasten erreichbar sind, für die Steuerung von Audio-, Videoplayer und ähnliche:
| Datei: ~/.Xmodmap |
keycode 153 = XF86AudioNext keycode 144 = XF86AudioPrev keycode 162 = XF86AudioPlay keycode 164 = XF86AudioStop |
Für die Vorwärts- und Rückwärtstasten bei den Pfeiltasten sind folgende Einträge nötig:
| Datei: ~/.Xmodmap |
keycode 233 = XF86Forward keycode 234 = XF86Back |
Diese Tasten kann man beispielweise dazu verwenden um durch die virtuellen Desktops zu wechseln. Aktivieren kann man die neuen Einstellungen mit folgendem Befehl:
Später braucht man diesen Befehl nicht mehr auszuführen, das die ~/.Xmodmap automatisch beim Starten des X-Servers geladen wird. Verwenden mehrere Benutzer den Laptop, muss man darauf achten in deren Home-Verzeichnissen ebenfalls die ~/.Xmodmap zu kopieren und die Rechte zu setzen, damit die Tasten verfügbar sind.
Weitere Informationen:
[Bearbeiten] Lautstärkeregelung
Damit man die Sondertasten für die Lautstärkeregelung benutzen kann benötigt man tpb und das Plugin kmilo. Für das On-Screen-Display muss man für tpb das USE Flag +xosd setzen.
emerge -av kmilo
Nach der Installation müssen noch die Rechte für /dev/nvram gesetzt werden, damit jeder normale User darauf zugreifen kann.
Sollte /dev/nvram nicht existieren muss zuerst das Modul nvram mit
geladen werden. Es kann sein, dass dann noch das dazugehörige Block-Device mit
erzeugt werden und anschliessend die Rechte, wie oben schon beschrieben, gesetzt werden müssen.
Nachdem nun alles installiert ist, findet man im KDE Kontrollzentrum unter Systemadministration den Menüpunkt IBM Thinkpad Laptop. Dort lassen sich alle Ereignisse mit einem frei wählbaren Programm verknüpfen.
[Bearbeiten] ThinkVantage
[Bearbeiten] HDAPS - IBM Active Protection System
Das R60 hat wie viele andere ThinkPAds auch Sensoren, die die Neigung des Gerätes feststellen können. Mit Hilfe dieser Sensoren und einem entsprechendem Programm kann man dafür sorgen, dass der Lese- und Schreibkopf der Festplatte bei Erschütterung oder Bewegung "geparkt" wird um einen eventuellen Headcrash zu vermeiden.
Für HDAPS braucht man entweder das interne Kernel-Modul:
| Linux Kernel Configuration: HDAPS |
Device Drivers -->
Hardware Monitoring support --->
<*> Hardware Monitoring support
<*> IBM Hard Drive Active Protection System (hdaps)
|
oder das HDAPS Modul aus dem Packet tp_smapi.
Das interne Kernel-Modul hab ich nicht getestet.
Entscheidet man sich für tp_smapi mit hdaps-Unterstützung, muss das maskierte Packet [thttp://packages.gentoo.org/?tp_smapi-0.31 p_smapi 0.31] mit dem USE Flag +hdaps emerged werden:
| Datei: /etc/make.conf |
USE="hdaps ..." |
Die zwei neuen Module in modules.autoload.d schreiben, damit sie beim booten automatisch geladen werden
| Datei: /etc/modules.autoload.d/kernel-2.6 |
tp_smapi hdaps |
und dann laden
modprobe hdaps
Für das eigentliche Parken des Kopfes ist ein Userspace-Daemon verantwortlich. Für diesen muss man allerdings den Kernel patchen, wenn man einen Kernel mit der Version 2.6.20* oder den hier verwendeten 2.6.21-Kernel verwendet. Den Patch kann man hier herunterladen.
Die Datei kopiert man ins Kernel-Source-Verzeichnis, normalerweise ist das /usr/src/linux. Dann patcht man den Kernel mit
Nun noch Kernel neu bauen und rebooten. Patches für andere Kernel-Versionen findet man auf ThinkWiki.org - HDAPS9. Als letztes emergt man das keyword-maskierte Programm hdapsd. Bevor man jedoch emerge startet, muss man die am Beginn dieses Abshcnitts gezeigte Kernel-Konfiguration setzen, aber ohne den Kernel zu kompilern und zu booten, da wir ja hier das Modul von tp_smapi verwenden wollen. Beim emergen fragt hdapsd nämlich diese Kernel-Konfiguration ab.
emerge -av hdapsd
Nach dem Installieren deaktiviert man hdaps wieder in der Kernel-Konfiguration
| Linux Kernel Configuration: HDAPS |
Device Drivers -->
Hardware Monitoring support --->
<*> Hardware Monitoring support
< > IBM Hard Drive Active Protection System (hdaps)
|
Daemon starten
und Autostart aktivieren
Wer gerne in der X-Umgebung den Status von HDAPS wissen möchte kann beispielsweise auf khdapsmonitor zurückgreifen.
Weitere Informationen:
[Bearbeiten] ThinkLight
Das ThinkLight lässt sich mit der FN+BildAuf Taste regulär ein- und ausschalten oder über das Kernel-Modul ibm_apci softwaretechnisch steuern. Mit
schaltet sich das Licht ein und folglich mit
wieder aus.
[Bearbeiten] Sonstiges
[Bearbeiten] Gerätetabelle
| Gerät | Beschreibung |
|---|---|
| /dev/hda | DVD-R/W Laufwerk (Symlinks: /dev/cdrom, /dev/cdr, /dev/dvd, /dev/dvdr) |
| /dev/kvm | Kernel Virtual Machine |
| /dev/sda | Eingebaute Serial ATA Festplatte. Partitionen sind mit Nummern angegeben. (Bsp.: /dev/sda3 = 3. Partition auf der 1. Festplatte) |
| /dev/ub[a-z] | USB Massenspeichergeräte. Partitionen sind mit Nummern angegeben. (Bsp.: /dev/uba2 = 2. Partirion auf dem 1. USB-Gerät) |
| /dev/sd[b-z] | USB Massenspeichergeräte. Partitionen sind mit Nummern angegeben. (Kernel 2.6.22) |
[Bearbeiten] Intel Virtualization Technology
Die Intel VT ist beim ThinkPad R60 normalerweise abgeschaltet. Will man sie nutzen muss man sie vorher im BIOS unter Config->CPU einschalten.
Überprüfen ob die Intel VT eingeschaltet, ohne ins BIOS zu gehen, ist kann man indem man schaut ob /dev/kvm exestiert.
Weitere Informationen:
[Bearbeiten] Links
- http://www.thinkwiki.org - ThinkWiki sollte man sich merken wenn man Linux auf ein Thinkpad installieren will (englisch)
- http://tuxmobil.org - Liste mit Anleitungen für diverse Distributionen auf Notebooks (englisch)