Mooz's Guide für SuSE 9.0 auf einem Compaq EVO N800c

Ziel dieser Seite ist es, eine Anleitung für die Installation und Einrichtung von SuSE 9.0 mit Kernel 2.4.21 auf einem Compaq Evo N800c zu geben. Natürlich übernehme ich keine Haftung für die Richtigkeit dieser Anleitung, noch für Schäden irgendwelcher Art.

Hardwarekonfiguration des Notebook
Prozessor Intel Mobile Pentium 4 1,7 GHz
Chipsatz Intel 845 (Brookdale)
Arbeitsspeicher 512MB DDR PC 2100
Festplatte 30GB TOSHIBA MK3018GAP
Grafikkarte ATI Mobile Radeon 7500
Bildschirm 15 " 1400x1050
Soundkarte Intel AC97 Audio Controller
DVD Compaq Multibay DVD Laufwerk
Modem Lucent LT Winmodem
USB 2.0 NEC USB 2.0 Controller
Netwerkkarte Intel PRO/100 VE
Infrarot National Semiconductors FIR
Keyboard Compaq Keyboard mit Sondertasten
Maus PS/2 kompatible Touchpad/Stick Combo

Und was uns der Kernel sagt:

Output von lspci : 
	00:00.0 Host bridge: Intel Corp. 82845 845 (Brookdale) Chipset Host Bridge (rev 04)
	00:01.0 PCI bridge: Intel Corp. 82845 845 (Brookdale) Chipset AGP Bridge (rev 04)
	00:1e.0 PCI bridge: Intel Corp. 82801BAM/CAM PCI Bridge (rev 42)
	00:1f.0 ISA bridge: Intel Corp. 82801CAM ISA Bridge (LPC) (rev 02)
	00:1f.1 IDE interface: Intel Corp. 82801CAM IDE U100 (rev 02)
	00:1f.5 Multimedia audio controller: Intel Corp. 82801CA/CAM AC'97 Audio Controller (rev 02)
	01:00.0 VGA compatible controller: ATI Technologies Inc Radeon Mobility M7 LW [Radeon Mobility 7500]
	02:04.0 Communication controller: Lucent Microelectronics LT WinModem (rev 02)
	02:06.0 CardBus bridge: Texas Instruments PCI1410 PC card Cardbus Controller (rev 02)
	02:08.0 Ethernet controller: Intel Corp. 82801CAM (ICH3) PRO/100 VE (LOM) Ethernet Controller (rev 42)
	02:0e.0 USB Controller: NEC Corporation USB (rev 41)
	02:0e.1 USB Controller: NEC Corporation USB (rev 41)
	02:0e.2 USB Controller: NEC Corporation USB 2.0 (rev 02)
		

Installation von SuSE 9.0

Die Installation von SuSE 9.0 verläuft weitgehen problemlos und einfach. Zu beachten ist eigentlich nur, dass man das Modem, nicht bei der Installation konfigurieren sollte. Bei der Packetauswahl sollte man jedoch auf alle Fälle die Auswahl für fortgeschrittene Benutzer treffen. Damit landen schonmal die wichtigsten Programme zum compilen usw. auf der Platte. Ansonsten erkennt YAST2 die Hardware richtig und dank des aktuellen Kernels wird ACPI sofort unterstüzt und richtig konfiguriert

Also gehen wir von einen Linux aus welches "up and running" ist =D

Und jetzt schauen wir mal die Details an und versuchen die Spezialitäten dieses Notebooks zum laufen zu bringen....

LT Winmodem

Leider scheint es einen Bug im SuSE 9.0 lt_modem Packet zu geben wodurch es unbrauchbar wird =( . Deswegen nehmen wir einfach den Treiber von Christoph. Auf alle Fälle das Tarball nehmen und entpacken. Mit $ ./make_module läuft ein Script durch, welches die richtigen Module baut und installiert. Einfach den Anweisungen folgen. Nicht das rpm bauen lassen, das funktioniert nicht. Nachdem alles gelaufen ist kann man mit Yast2 die Provider anlegen usw.

IrDA

Zuerst muß man wissen, dass das Evo kein SIR Interface, sondern ein nsc-ircc FIR auf IO 0x3e8, IRQ 3, DMA 3 und mit der DongleID 0x08 hat. Der SuSE Kernel ist zwar darauf schon vorbereitet doch um das Modul zu laden müssen wir zuerst noch die Versionsüberprüfung des nsc-ircc Modules abschalten. Unter /usr/src/linux/drivers/net/irda die Datei nsc-ircc.c bearbeiten. Dort muß der Anweisungsblock auskommentiert werden der sich bei ca. Zeile 706 befindet. Danach müussen natürlich die Kernelmodule neu übersetzt und installiert werden. Danach muß noch folgendes in die /etc/modules.conf bei IrDA eingetragen werden:

########################################################################
# IrDA
########################################################################
alias char-major-161 ircomm-tty
pre-install nsc-ircc /bin/setserial "/dev/ttyS2" "uart" "none"
options nsc-ircc dma=3 dongle_id=0x08 io=0x3e8 irq=3
alias irda0 nsc-ircc
		

Jetzt kann mit $ rcirda start den IrDA Dienst von SuSE starten. Um Akku zu sparen sollte man den Dienst nicht immer laufen lassen. Mit $ irdadump sollte man nun die Geräte in Reichweite sehen können.

Keyboard

Das wunderbare an Compaq ist: Die Keys haben die gleichen Keycodes bei allen Geräten. Sprich auch die Externen Keyboards haben die gleichen Keycodes wie die Notebook Tastaturen. Ich benutze für die Keys ein kleines Programm was auch ein OSD, änlich wie die Logitech Software für Windooze, bietet unter X. Keycodes kann man über $ xev herausfinden.

Keycodes
Info-Knopf 163
Mail-Knopf 158
Search-Knopf 154
Medien-Knopf 239
Volume-DOWN-Knopf 174
Volume-UP-Knopf 176
Mute-Knopf 160
Play/Pause(Fn+F9) 162
Stop(Fn+F10) 164
Previous(Fn+F11) 144
Next(Fn+F12) 153

Naja, eigentlich gehören die Tasten für die Displayhelligkeit und der Schalter für das Display nicht wirklich hier her. Aber wo sonst?
Um auch diese Funktionen nutzen zu können genügt es in die die /etc/X11/XF86Conf unter Device noch den Eintrag Option "AGPMode" "4" einzufügen

Section "Device"
  BoardName    "Radeon LW"
  BusID        "1:0:0"
  Driver       "radeon"
  Identifier   "Device[0]"
  Option        "AGPMode" "4"
  Screen       0
  Option       "Rotate" "off"
  VendorName   "ATI"
EndSection
		

ACPI

Da Compaq beim EVO voll auf ACPI setzt und ihm keinen APM Support mit auf den Weg gegeben hat, muss man unter Linux im Moment noch mit den gegeben Einschränkungen leben. D.h. kein Hibernate und Suspent to RAM =(. Erst mit Kernel 2.6 wird sich da etwas tun. Mit dem 2.6er der bei SuSE 9.0 dabei ist konnte ich auch keine Verbesserungen feststellen. Was bleibt, sind die die ACPI-Möglichkeit die, dank des schon mit den ACPI-Patches gepatchten Kernel von SuSE bleiben: Loading ACPI modules (ac battery button fan processor thermal ), was ja eigentlich nicht schlecht ist =).
Was man jetzt noch machen kann ist folgendes:

Jetzt sollte sich unter /proc/acpi so ziemlich alles was interessant sein könnte zumindest auslesen lassen.
/proc/acpi/:
  insgesamt 0
   0 dr-xr-xr-x    3 root     root            0 2003-11-12 16:14 ac_adapter
   0 -rw-r--r--    1 root     root            0 2003-11-12 16:14 alarm
   0 dr-xr-xr-x    4 root     root            0 2003-11-12 16:14 battery
   0 dr-xr-xr-x    5 root     root            0 2003-11-12 16:14 button
   0 -r--------    1 root     root            0 2003-11-12 16:14 dsdt
   0 dr-xr-xr-x    3 root     root            0 2003-11-12 16:14 embedded_controller
   0 -r--------    1 root     root            0 2003-11-12 11:14 event
   0 -r--------    1 root     root            0 2003-11-12 16:14 fadt
   0 dr-xr-xr-x    6 root     root            0 2003-11-12 16:14 fan
   0 -r--r--r--    1 root     root            0 2003-11-12 16:14 info
   0 dr-xr-xr-x   12 root     root            0 2003-11-12 16:14 power_resource
   0 dr-xr-xr-x    3 root     root            0 2003-11-12 16:14 processor
   0 -rw-r--r--    1 root     root            0 2003-11-12 16:14 sleep
   0 dr-xr-xr-x    5 root     root            0 2003-11-12 16:14 thermal_zone
		
Was nettes ist:$ echo 0 > /proc/acpi/fan/FAN0/state gefolgt von $ echo 3 > /proc/acpi/fan/FAN0/state dadurch wird der Lüfter ausgeschaltet, der nach dem booten ja immer läuft. Von Interesse ist bestimmt auch cat /proc/acpi/thermal_zone/TZ1/temperature wodurch man die aktuellen Temperatur des Prozessors erfährt.

Touchpad/Stick Combo

Nunja, von Synaptics scheint es noch einen Treiber zu geben, der die "Spielereien" unterstüzt wie etwa eine Scrollleiste am Rand usw. . Im Moment läft es aber mit dem PS/2 Standard Treiber. Wenn ich mal Zeit habe, werde ich mal antesten was da zu machen ist.

Contact

Für alle die mit mir Kontakt aufnehmen wollen: moto0012 at fh-karlsruhe.de oder ihr schaut hier mal rein.
Valid HTML 4.01! TuxMobil - Linux on Laptops, PDAs and mobile Phones