Home
Meine Hommingberger Gepardenforelle

ThinkPad R51 und Debian Sarge GNU/Linux

Leider ist mein erstes Notebook gestorben. Als Ersatz habe ich mir ein IBM ThinkPad R51 gekauft, kaufentscheidend war der gute Ruf der IBM Hardware. Nun, wenn man vorher ein Gericom-Produkt sein eigen nannte, ist das neue Notebook eine Offenbarung. Die Typenbezeichnung lautet 1829-DRG.

Auf dem Rechner lief zunächst Debian Woody, irgendwann wollte ich neuere Software nutzen. Hier eine kurzer Bericht über die insgesamt erfreulichen Ergebnisse.

Mittlerweile ist auch dieser Bericht veraltet. Auf dem Rechner läuft nun Debian Lenny, dazu gibt es weider einen Bericht.

Ausstattung

Tabelle mit den wichtigsten Komponenten und deren Unterstützung unter Debian Linux Sarge, Kernel 2.6.8-2-686:

Prozessor:Pentium M 1500Voll unterstützt. Freqeuenz wird mit cpufreqd bei Bedarf gedrosselt.
PCMCIA:Texas Instruments PCI4520 PC card Cardbus Controller (rev 01)Soweit getestet keinerlei Probeme.
Sound:Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (rev 01)mit dem Modul i810_audio gute Funktion.
USB:USB 2-SchnittstelleTadellose Funktion mit Modem und Soundkarte.
Graphikkarte:ATI Mobility Radeon 7500 32 MBXFree mit radeon-Treiber.
Netzwerk:Intel Corp. 82540EP Gigabit Ethernet Controller (Mobile) (rev 03)volle Unterstützung
WLAN: Intel Corp. PRO/Wireless LAN 2100 3B Mini PCI Adapter (rev 04)Nach Kompilierung des Debian-Paketes "ipw2100" und Herunterladen der Firmware gute Unterstützung.
internes Modem: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controllernicht getestet. Möglicherweise mit dem modul sl_modem.
Infrarot-Schnittstelle Mangels IRDA-fähigen Geräten nicht getestet: Treiber wird geladen, irdadump zeigt die Eigenaktivität des Rechners.

Output von "lspci":

niehaus@crystalline:~$ lspci -v
00:00.0 Host bridge: Intel Corp. 82855PM Processor to I/O Controller (rev 03)
        Subsystem: IBM: Unknown device 0529
        Flags: bus master, fast devsel, latency 0
        Memory at d0000000 (32-bit, prefetchable) [size=256M]
        Capabilities: <available only to root>

00:01.0 PCI bridge: Intel Corp. 82855PM Processor to AGP Controller (rev 03) (prog-if 00 [Normal decode])
        Flags: bus master, 66Mhz, fast devsel, latency 96
        Bus: primary=00, secondary=01, subordinate=01, sec-latency=64
        I/O behind bridge: 00003000-00003fff
        Memory behind bridge: c0100000-c01fffff
        Prefetchable memory behind bridge: e0000000-e7ffffff

00:1d.0 USB Controller: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller  (rev 01) (prog-if 00 [UHCI])
        Subsystem: IBM: Unknown device 052d
        Flags: bus master, medium devsel, latency 0, IRQ 11
        I/O ports at 1800 [size=32]

00:1d.1 USB Controller: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller  (rev 01) (prog-if 00 [UHCI])
        Subsystem: IBM: Unknown device 052d
        Flags: bus master, medium devsel, latency 0, IRQ 11
        I/O ports at 1820 [size=32]

00:1d.2 USB Controller: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller  (rev 01) (prog-if 00 [UHCI])
        Subsystem: IBM: Unknown device 052d
        Flags: bus master, medium devsel, latency 0, IRQ 11
        I/O ports at 1840 [size=32]

00:1d.7 USB Controller: Intel Corp. 82801DB/DBM (ICH4/ICH4-M) USB 2.0 EHCI Controller (rev 01) (prog-if 20 [EHCI])
        Subsystem: IBM: Unknown device 052e
        Flags: bus master, medium devsel, latency 0, IRQ 11
        Memory at c0000000 (32-bit, non-prefetchable) [size=1K]
        Capabilities: <available only to root>

00:1e.0 PCI bridge: Intel Corp. 82801 PCI Bridge (rev 81) (prog-if 00 [Normal decode])
        Flags: bus master, fast devsel, latency 0
        Bus: primary=00, secondary=02, subordinate=08, sec-latency=64
        I/O behind bridge: 00004000-00008fff
        Memory behind bridge: c0200000-cfffffff
        Prefetchable memory behind bridge: e8000000-efffffff

00:1f.0 ISA bridge: Intel Corp. 82801DBM LPC Interface Controller (rev 01)
        Flags: bus master, medium devsel, latency 0

00:1f.1 IDE interface: Intel Corp. 82801DBM (ICH4) Ultra ATA Storage Controller (rev 01) (prog-if 8a [Master SecP PriP])
        Subsystem: IBM: Unknown device 052d
        Flags: bus master, medium devsel, latency 0, IRQ 11
        I/O ports at <unassigned>
        I/O ports at <unassigned>
        I/O ports at <unassigned>
        I/O ports at <unassigned>
        I/O ports at 1860 [size=16]
        Memory at 20000000 (32-bit, non-prefetchable) [size=1K]

00:1f.3 SMBus: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (rev 01)
        Subsystem: IBM: Unknown device 052d
        Flags: medium devsel, IRQ 11
        I/O ports at 1880 [size=32]

00:1f.5 Multimedia audio controller: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (rev 01)
        Subsystem: IBM: Unknown device 0554
        Flags: bus master, medium devsel, latency 0, IRQ 11
        I/O ports at 1c00 [size=256]
        I/O ports at 18c0 [size=64]
        Memory at c0000c00 (32-bit, non-prefetchable) [size=512]
        Memory at c0000800 (32-bit, non-prefetchable) [size=256]
        Capabilities: <available only to root>

00:1f.6 Modem: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (rev 01) (prog-if 00 [Generic])
        Subsystem: IBM: Unknown device 0559
        Flags: bus master, medium devsel, latency 0, IRQ 11
        I/O ports at 2400 [size=256]
        I/O ports at 2000 [size=128]
        Capabilities: <available only to root>

01:00.0 VGA compatible controller: ATI Technologies Inc Radeon Mobility M7 LW [Radeon Mobility 7500] (prog-if 00 [VGA])
        Subsystem: IBM: Unknown device 0530
        Flags: bus master, stepping, fast Back2Back, 66Mhz, medium devsel, latency 66, IRQ 11
        Memory at e0000000 (32-bit, prefetchable) [size=128M]
        I/O ports at 3000 [size=256]
        Memory at c0100000 (32-bit, non-prefetchable) [size=64K]
        Expansion ROM at <unassigned> [disabled] [size=128K]
        Capabilities: <available only to root>

02:00.0 CardBus bridge: Texas Instruments PCI4520 PC card Cardbus Controller (rev 01)
        Subsystem: IBM: Unknown device 0552
        Flags: bus master, medium devsel, latency 168, IRQ 11
        Memory at b0000000 (32-bit, non-prefetchable) [size=4K]
        Bus: primary=02, secondary=03, subordinate=05, sec-latency=176
        Memory window 0: 20400000-207ff000 (prefetchable)
        Memory window 1: 20800000-20bff000
        I/O window 0: 00004000-000040ff
        I/O window 1: 00004400-000044ff
        16-bit legacy interface ports at 0001

02:00.2 FireWire (IEEE 1394): Texas Instruments: Unknown device 802a (rev 01) (prog-if 10 [OHCI])
        Subsystem: IBM: Unknown device 0553
        Flags: bus master, medium devsel, latency 64, IRQ 11
        Memory at c0215000 (32-bit, non-prefetchable) [size=2K]
        Memory at c0210000 (32-bit, non-prefetchable) [size=16K]
        Capabilities: <available only to root>

02:01.0 Ethernet controller: Intel Corp. 82540EP Gigabit Ethernet Controller (Mobile) (rev 03)
        Subsystem: IBM PRO/1000 MT Mobile Connection
        Flags: bus master, 66Mhz, medium devsel, latency 64, IRQ 11
        Memory at c0220000 (32-bit, non-prefetchable) [size=128K]
        Memory at c0200000 (32-bit, non-prefetchable) [size=64K]
        I/O ports at 8000 [size=64]
        Expansion ROM at <unassigned> [disabled] [size=64K]
        Capabilities: <available only to root>

02:02.0 Network controller: Intel Corp. PRO/Wireless LAN 2100 3B Mini PCI Adapter (rev 04)
        Subsystem: Intel Corp.: Unknown device 2551
        Flags: bus master, medium devsel, latency 64, IRQ 11
        Memory at c0214000 (32-bit, non-prefetchable) [size=4K]
        Capabilities: <available only to root>

Die Installation

Es ist allgemein bekannt: ein Distributions-Upgrade sollte man nicht per "apt-get" machen. Ich habe es trotzdem gemacht und habe mir unnötig Probleme gemacht, bis ich dann doch "aptitude" genommen habe. Teilweise war es deshalb eher schmerzhaft.

XFree

Das ein Sarge enthaltene XFree bringt Unterstützung für die Karte Grafikkarte mit. Viel Zeit habe ich benötigt um herauszufinden, wie ich das Touchpad aktiviert bekomme. Hier sind die Schritte:

Der Synaptic-Treiber erzeugt in der Konfigutaion eine Art unsichtbares Scrollrad am rechten Rand des Touchpads. Einfach dort mit dem Finger hoch und hinunterstreichen.

Hier ist die Konfigurationsdatei:



# XF86Config-4 (XFree86 X Window System server configuration file)
#
# This file was generated by dexconf, the Debian X Configuration tool, using
# values from the debconf database.
#
# Edit this file with caution, and see the XF86Config-4 manual page.
# (Type "man XF86Config-4" at the shell prompt.)
#
# This file is automatically updated on xserver-xfree86 package upgrades *only*
# if it has not been modified since the last upgrade of the xserver-xfree86
# package.
#
# If you have edited this file but would like it to be automatically updated
# again, run the following commands as root:
#
#   cp /etc/X11/XF86Config-4 /etc/X11/XF86Config-4.custom
#   md5sum /etc/X11/XF86Config-4 >/var/lib/xfree86/XF86Config-4.md5sum
#   dpkg-reconfigure xserver-xfree86

Section "Files"
	FontPath	"unix/:7100"			# local font server
	# if the local font server has problems, we can fall back on these
	FontPath	"/usr/lib/X11/fonts/misc"
	FontPath	"/usr/lib/X11/fonts/cyrillic"
	FontPath	"/usr/lib/X11/fonts/100dpi/:unscaled"
	FontPath	"/usr/lib/X11/fonts/75dpi/:unscaled"
	FontPath	"/usr/lib/X11/fonts/Type1"
	FontPath	"/usr/lib/X11/fonts/CID"
	FontPath	"/usr/lib/X11/fonts/Speedo"
	FontPath	"/usr/lib/X11/fonts/100dpi"
	FontPath	"/usr/lib/X11/fonts/75dpi"
EndSection

Section "Module"
	Load	"GLcore"
	Load	"bitmap"
	Load	"dbe"
	Load	"ddc"
	Load	"dri"
	Load	"extmod"
	Load	"freetype"
	Load	"glx"
	Load	"int10"
	Load	"record"
	Load	"speedo"
	Load	"type1"
	Load	"vbe"
	Load    "synaptics"
EndSection

Section "InputDevice"
	Identifier	"Generic Keyboard"
	Driver		"keyboard"
	Option		"CoreKeyboard"
	Option		"XkbRules"	"xfree86"
	Option		"XkbModel"	"pc105"
	Option		"XkbLayout"	"de"
	Option		"XkbVariant"	"nodeadkeys"
EndSection

Section "InputDevice"
	Identifier	"Configured Mouse"
	Driver		"synaptics"
	Option		"CorePointer"

	Option        "Device"        "/dev/psaux"
   	Option        "Protocol"      "auto-dev"
     	Option        "LeftEdge"      "1700"
       	Option        "RightEdge"     "5300"
        Option        "TopEdge"       "1700"
	Option        "BottomEdge"    "4200"
	Option        "FingerLow"     "25"
	Option        "FingerHigh"    "30"
	Option        "MaxTapTime"    "180"
	Option        "MaxTapMove"    "220"
	Option        "VertScrollDelta" "100"
	Option        "MinSpeed"      "0.06"
	Option        "MaxSpeed"      "0.12"
	Option        "AccelFactor" "0.0010"
	#  Option       "SHMConfig"     "on"
	#  Option       "Repeater"      "/dev/ps2mouse"

	#Option		"Device"		"/dev/input/mice"
	#Option		"Protocol"		"ImPS/2"
	#Option		"Emulate3Buttons"	"true"
	#Option		"ZAxisMapping"		"4 5"
EndSection


Section "InputDevice"
	Identifier	"Configured Pad"
	Driver		"mouse"
	Option		"AlwaysCore"

	Option		"Device"		"/dev/input/mice"
	Option		"Protocol"		"ImPS/2"
	Option		"Emulate3Buttons"	"true"
	Option		"ZAxisMapping"		"4 5"
EndSection




Section "Device"
	Identifier	"Standardgrafikkarte"
	Driver		"ati"
EndSection

Section "Monitor"
	Identifier	"Standardbildschirm"
	HorizSync	30-60
	VertRefresh	50-75
	Option		"DPMS"
EndSection

Section "Screen"
	Identifier	"Default Screen"
	Device		"Standardgrafikkarte"
	Monitor		"Standardbildschirm"
	DefaultDepth	24
	SubSection "Display"
		Depth		1
		Modes		"1280x960" "1152x864" "1024x768"
	EndSubSection
	SubSection "Display"
		Depth		4
		Modes		"1280x960" "1152x864" "1024x768"
	EndSubSection
	SubSection "Display"
		Depth		8
		Modes		"1280x960" "1152x864" "1024x768"
	EndSubSection
	SubSection "Display"
		Depth		15
		Modes		"1280x960" "1152x864" "1024x768"
	EndSubSection
	SubSection "Display"
		Depth		16
		Modes		"1280x960" "1152x864" "1024x768"
	EndSubSection
	SubSection "Display"
		Depth		24
		Modes		"1280x960" "1152x864" "1024x768"
	EndSubSection
EndSection

Section "ServerLayout"
	Identifier	"Default Layout"
	Screen		"Default Screen"
	InputDevice	"Generic Keyboard"
	InputDevice	"Configured Mouse"
	InputDevice	"Configured Pad"
EndSection

Section "DRI"
	Mode	0666
EndSection


Consolen Framebuffer

Damit die Console in höhere Auflösung arbeitet, nutze ich den Framebuffer: der Kernel wird mit einer entsprechenden Startoption aufgerufen. Dies geht bei LILO nicht mit einem "append"-Eintrag. Der konkrete Eintrag in der /etc/lilo.conf lautet:

image=/vmlinuz
        label=Linux
        initrd=/initrd.img
        append="hdc=ide-scsi"
        vga=792
        read-only

Nicht vergessen: um die Änderungen wirksam werden zu lassen muß das Programm lilo nocheinmal aufgerufen werden.

Strom sparen

cpufreqd

Mit dem cpufreqd wird die CPU-Frequent bei Bedarf reduziert. Damit er funktioniert, müssen die Module speedstep-centrino und cpufreq_userspace geladen sein. Husch, flink der Datei /etc/modules hinzufügen.

hibernate

Mit hibernate schicke ich den Rechner in den Schlaf. Die ohne Sinn und Verstand hingebastelte Konfifurationsdatei /etc/hibernate/hibernate.conf funktioniert hier wie gewünscht, ist aber sicher noch anpasspar. Die anderen Konfigurationen unter /etc/hibernate/ habe ich nicht angefasst.

### sysfs_power_state
## To use /sys/power/state to suspend your machine (which may offer
## suspend-to-RAM, suspend-to-disk, standby, etc) comment out all the options
## above for Software Suspend 2, below for acpi_sleep, and uncomment this line.
## You may replace mem with any one of the states from "cat /sys/power/state"
UseSysfsPowerState mem
# PowerdownMethod shutdown

### acpi_sleep
## To use ACPI to suspend your machine (via /proc/acpi/sleep), comment out
## all the options above for Software Suspend 2 and sysfs, and uncomment this
## line. The number refers to the ACPI sleep state - 3 is suspend-to-RAM and
## 4 is suspend-to-disk.
# UseACPISleep 4

##############################################################################
### Some global settings
##############################################################################

Verbosity 0
LogFile /var/log/hibernate.log
LogVerbosity 1
# AlwaysForce yes
# AlwaysKill yes
# SwsuspVT 15
Distribution debian
# XDisplay :0

##############################################################################
### Scriptlets
###   Scriptlets provide support for doing all sorts of things before and after
###   suspending. The defaults settings here should work for most people, but
###   you may wish to edit these to taste. Consult "hibernate -h" for help on
###   the configuration settings.
##############################################################################

### bootsplash
## If you use bootsplash, also enabling SwitchToTextMode is recommended if
## you use X, otherwise you may end up with a garbled X display.
# Bootsplash on
# BootsplashConfig /etc/bootsplash/default/config/bootsplash-1024x768.cfg

### clock
SaveClock restore-only

### devices
# IncompatibleDevices /dev/dsp /dev/video*

### diskcache
# DisableWriteCacheOn /dev/hda

### fbsplash (enable SwitchToTextMode if you use this)
# FBSplash on
# FBSplashTheme suspend2

### filesystems
# Unmount /nfsshare /windows /mnt/sambaserver
# UnmountFSTypes smbfs nfs
# UnmountGraceTime 1
# Mount /windows

### grub
# ChangeGrubMenu yes
# GrubMenuFile /boot/grub/menu.lst
# AlternateGrubMenuFile /boot/grub/menu-suspended.lst
# BackupGrubMenuFile /boot/grub/menu.lst.hibernate.bak

### lilo
# EnsureLILOResumes yes

### lock (generally you only want one of the following options)
# LockConsoleAs root
# LockXScreenSaver yes
# LockKDE yes

### misclaunch
# OnSuspend 20 echo "Good night!"
# OnResume 20 echo "Good morning!"

### modules
# UnloadModules snd_via82cxxx usb-ohci
# UnloadAllModules yes
UnloadBlacklistedModules yes
LoadModules auto
# LoadModulesFromFile /etc/modules

### modules-gentoo
# GentooModulesAutoload yes

### network
# DownInterfaces eth0
# UpInterfaces auto

### programs
# IncompatiblePrograms xmms

### services
# RestartServices postfix
# StopServices alsasound
# StartServices aumix

### vbetool
# EnableVbetool yes
# RestoreVbeStateFrom /var/lib/vbetool/vbestate
# VbetoolPost yes

### xhacks
# SwitchToTextMode yes
# UseDummyXServer yes

### xstatus
## This can be set to gnome, kde or x:
# XStatus gnome
# XSuspendText Preparing to suspend...
# XResumeText Resuming from suspend...
## When using XStatus x, and you have xosd installed:
# XosdSettings --font -misc-fixed-medium-r-semicondensed--*-120-*-*-c-*-*-* --colour=Green --shadow 1 --pos bottom --align center --offset 50

Netzwerk

Seit Sarge vollkommen unkomplizierte Unterstützung.

PCMCIA

Um die PCMCIA Orinoco Gold wireless LAN Karte nutzen zu können, mußte der Eintrag PCIC="yenta_socket" in der Datei /etc/default/pcmcia gesetzt werden. Sie sieht nun folgendermaßen aus:

niehaus@crystalline:~$ cat  /etc/default/pcmcia 
# Defaults for pcmcia (sourced by /etc/init.d/pcmcia)
PCMCIA=yes
PCIC="yenta_socket"
#PCIC=i82365
PCIC_OPTS=
CORE_OPTS=
CARDMGR_OPTS=
niehaus@crystalline:~$ 

WLAN

Die Karte wird von den in ipw2100-source enthaltenen Treibern unterstützt. man muß sie allerdings aus den Quellen kompilieren. Dazu bietet modules-assistant wirklich eine excellente Hilfe an. Das ist selbsterklärend.

In neueren Kernel ist der bereits Treiber enthalten, ich habe noch eine Anleitung zur Einrichtung eines WLAN mit WPA2 erstellt.

Ungetestet

Ein paar Dinge sind nicht getestet, da ich sie nicht benötige:

Links


Home
Sebastian Niehaus

Last modified: Thu Oct 23 19:09:35 CEST 2008
$Id: Debian-Sarge-Linux-auf-dem-ThinkPad-R51.html,v 1.12 2008/10/23 17:09:51 niehaus Exp $