informations/bug: http://bugzilla.kernel.org/show_bug.cgi?id=8549
feel free to edit this site.
Update 1.6.2008 Phil: My Cardreader didn't work with the modprobe tifm_sd method, i simply couldn't mount it.
dmesg said: tifm_core: MemoryStick card detected in socket 0:0
Now I found this little workaround at http://swehrmann.blogspot.com/2008/04/memorystick-support-unter-ubuntu-hardy.html sorry its in german but what you have to do is rather simple:
For Ubuntu 8.04 I did:
sudo apt-get install subversion svn co -r155 http://svn.berlios.de/svnroot/repos/tifmxx/trunk/driver/ cd driver/ wget http://www.tu-chemnitz.de/~sweh/tifm_ms.patch patch -p0 < tifm_ms.patch make sudo make install
and my Cardreader worked fine.
thanks to Lutz for this great site.
Update: 20090526 Torsten Römer: This pattern makes power off work as well:
- Run your computer with AC or battery
- Do a suspend to disk (i.e. s2disk or Gnome Power Manager)
- If it does not power off, force a power off by pushing the power button until it turns off
- Turn on the computer, it should resume fine
- Now power off will always work as long as you do nothing else than suspend to disk
- Power off also works once when doing suspend to RAM (i.e. s2ram or GPM) but subsequent suspend to RAM will not power off
- If you do suspend to disk after a suspend to RAM, power off will also continue to work
- Normal shutdown powers off as well but power off stops working after that - start procedure at the beginning
Update: 20071210 Lutz: Sebastian Lammermann found an workaround to power off the notebook. The way he described works for mee to:
I found out that the Notebook DOES power down correctly (at least in 90 % of all cases) if you do the following: - Run your computer with battery power - Wait until it suspends to disc and turns off in the end (because the battery's empty) - Load your battery and restart the computer - Use it as normal - Shut down as normal => NOW it should turn off correctly (if it doesn't, reboot and give it another try)!!! I hope this helps Regards Sebastian Lammermann
Abweichend: Du brauchst die Batterie nicht leer werden zu lassen, hier ein schnellerer Weg, basierend auf dem Vorschlag von Sebastian Lammermann:
- Betreibe Deinen Rechner im Batteriebetrieb
- wechsle auf eine Konsole
- werde root, gib ein:
echo disk >/sys/power/state
- Damit versucht der Rechner einen suspend to Disk, der aber nicht funktioniert, weil der Rechner nicht aus geht. Er bleibt einfach stehen
klappe Deinen Rechner zu und entferne im laufendem Betrieb die Batterie.
- stecke die Batterie wieder rein, schließe das Ladegerät an und fahre Deinen Rechner hoch
Ab sofort geht der Rechner normal aus, so wie er soll. Ich verstehe nicht warum das funktioniert, aber es tut!
dsdt, kernelconfig, dmesg, lspci -vv and more : (20070720, 12:20 UTC) http://belug.de/~lutz/pub/benq_joybook_s73u/stuff/
Dieser Bericht ist noch nicht fertig. Ich arbeite daran. Auf diesen Seiten wird beschrieben, wie ich Debian Etch auf meinen Joybook S73U installiert habe. Alle Infos hier auf eigene Gefahr, also wenn Ihr Laptop brennt geben Sie nicht mir die Schuld!
Offene Probleme:
- ACPI_POWER_OFF geht nicht, dh. kein suspend, kein poweroff, ich habe noch Keine Idee, wie ich das beheben kann.
- Gibt es dazu schon was neues? Rechner, der sicht nicht ausschaltet ist irgendwie schlecht. X)
- Nein, das ist immer noch offen, siehe Bugreport ganz oben auf dieser Seite
- Gibt es dazu schon was neues? Rechner, der sicht nicht ausschaltet ist irgendwie schlecht. X)
- Probleme mit den Sondertasten, sie scheinen alle zu funktionieren, aber es Handarbeit nötig. Die Zeit hatte ich noch nicht.
Ansonsten läuft der Rechner gut. WIP- work in progress
Weitere Infos (Ubuntu 7.04)
- Grafik funktioniert mit 1280x800 auf Anhieb.
- WLAN funktioniert mit WEP (WPA2 macht Probleme, keine Verbindung)
- LAN tut
- Sound tut
- Taste Web/Mail tut auf Anhieb (!).
- Taste P1 zeigt keine Funktion, muesste man wohl nacharbeiten.
Der windowsbasierte Benq BIOS 1.21 Flasher macht den GRUB Bootloader kaputt. Ist aber kein Problem, man muss halt von der Ubuntu-CD das Rescuesystem booten, in's installierte System chrooten und grub-install laufen lassen.
- Ausschalten tut auch hier nicht so richtig.
Hardware
lspci
- 00:00.0 Host bridge: Intel Corporation Mobile 945GM/PM/GMS/940GML and 945GT Express Memory Controller Hub (rev 03)
- 00:02.0 VGA compatible controller: Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller (rev 03)
- 00:02.1 Display controller: Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller (rev 03)
- 00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 02)
- 00:1c.0 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 1 (rev 02)
- 00:1c.1 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 2 (rev 02)
- 00:1c.2 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 3 (rev 02)
- 00:1c.3 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 4 (rev 02)
- 00:1d.0 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #1 (rev 02)
- 00:1d.1 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #2 (rev 02)
- 00:1d.2 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #3 (rev 02)
- 00:1d.3 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #4 (rev 02)
- 00:1d.7 USB Controller: Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller (rev 02)
- 00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e2)
- 00:1f.0 ISA bridge: Intel Corporation 82801GBM (ICH7-M) LPC Interface Bridge (rev 02)
- 00:1f.2 IDE interface: Intel Corporation 82801GBM/GHM (ICH7 Family) Serial ATA Storage Controller IDE (rev 02)
- 00:1f.3 SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller (rev 02)
- 02:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG Network Connection (rev 02)
04:00.0 Ethernet controller: Broadcom Corporation NetLink BCM5789 Gigabit Ethernet PCI Express (rev 21)
05:05.0 CardBus bridge: Texas Instruments PCIxx12 Cardbus Controller
05:05.1 FireWire (IEEE 1394): Texas Instruments PCIxx12 OHCI Compliant IEEE 1394 Host Controller
- 05:05.2 Mass storage controller: Texas Instruments 5-in-1 Multimedia Card Reader (SD/MMC/MS/MS PRO/xD)
- 05:05.3 Generic system peripheral [0805]: Texas Instruments PCIxx12 SDA Standard Compliant SD Host Controller
Kernel- Module
Controller: device->serial_ata-> intel PIIX-SATA und PIIX-PATA fest mit in den Kernel
- Grafik: intel_agp, agpgart, i915, drm
- Audio: snd_hda_intel
- Usb: uhci_hcd, ehci_hcd, usbcore
- LAN: tg3
- WLAN: ipw3945
- Cardreader: tifm_7xx1, tifm_sd
- Bluetooth: bluetooth
- firewire: ieee1394, ohci1394
Installation
Vorarbeiten
Es wird ein Windows XP Professionell mit eigener Installations-CD mitgeliefert, das kann man ja später verkaufen oder in einer VM laufen lassen. Als virtuelle Maschine empfehle ich VirtualBox. Das lässt sich bedienen vie VM-Ware, ist aber inzwischen freie Software. Ich habe als Vorarbeit zur Installation von Linux das vorinstallierte Windows entfernt, weil es ein komisches Betriebssystem ist, das auch noch auf einer wirklich seltsam partitionierten Platte liegt. Ich habe mich deshalb dazu entschlossen, mit einer komplett leeren Platte anzufangen.
Debian Installation
Die Installation war sehr unspektakulär. Einfach die Debian Etch- Netinstall (ich hatte dayly build vom 1.02.2007 sid) runterladen und installieren. Hier gibt es nichts zu erzählen, einfach die CD einlegen, den Rechner starten, die Fragen beantworten und 20 Minuten später hat man ein lauffähiges System.
eigener Kernel
Wegen besserer Hardwareunterstützung habe ich inen eigenen Kernel gebaut.
Nach der Grundinstallation habe ich die Kernelquellen 2.6.20 von www.kernel.org geholt, compiliert, installiert.
Ein Problem bei mir war die initrd, weil ich mein rootfilesystem auf einer mit cryptsetup-luks verschlüsselten Partition installiert habe. Deshalb musste ich für die Erstellung der initrd yaird nehmen, Was aber nirgends erwähnt war.
Hier gibt es Lesestoff dazu:http://www.linux-magazin.de/Artikel/ausgabe/2006/10/cryptofshowto/cryptofshowto.html
Das bauen der initrd ist dann eigentlich einfach:
- yaird -o /boot/initrd.img-2.6.20 2.6.20
Nachtrag zu Kernel 2.6.22: ein erstellen der initrd ist nicht mehr mit yaird möglich, es kommt eine Fehlermeldung, das yaird U: Uniq=" in /proc/bus/input/devices nicht kennt. Einfach dazu folgendes in /usr/lib/yaird/perl/InputTab.pm einfügen/patchen:
--- InputTab.pm.OLD 2007-07-12 20:46:50.000000000 +0200 +++ InputTab.pm 2007-07-12 20:48:11.000000000 +0200 @@ -70,6 +70,12 @@ # Do not keep track of this. # $work->{sysfs} = $1; } + + elsif ($line =~ /^U: Uniq=(.*)$/) { + # Do not keep track of this. + # $work->{sysfs} = $1; + } + elsif ($line =~ /^B: ([A-Z]+)=(.*)$/) { $work->{capabilities}{$1} = $2; }
das habe ich auf http://www.debianforum.de/forum/viewtopic.php?t=86636 gefunden.
Konfiguration
Sondertasten
Damit bin ich nicht fertig. Es scheinen alle Sondertasten zu funktionieren, auch die mitgelieferte Fernbedienung. Es werden Tastencodes erkannt, die dann konfiguriert werden müssen. Dazu hatte ich noch nicht wirklich Zeit, deshalb hier vorerst nur die "Rohinformationen": . FN+F1: e02b
- FN+F2: event "button/sleep SLPB 00000080 00000001
- F3
- F4 Hardware: dunkler ; e06e
- F5 Hardware: heller ; e06e
- F6 Hardware: Touchpad an/aus ; e071/e072
- F7 0x20 F8 0x2e
- F9 0x30
- F10 e031
- F11 e05a // e059 (Infrarot?)
- F12 e040 (Bluetoth?)
- ESC e033
oben links:
- 1: e032 (178)
- 2: e06c (236)
- 3: e06f (239)
Schiebeschalter Wlan: e040 (134)
Diese Tasten müssen jetzt noch zugeordnet werden. Keycodes zwischen 112 und 125 sind noch nicht durch andere Tasten belegt, daher stehen diese für die Zuordnung an Spezialtasten zur freien Verfügung. Das geht am besten durch ein shellscript:
- {{{#!/bin/sh
# # setkeycodes circumvents a bug in the keycode table at # Joybook S73U, to get the extra keys running # # Author: Lutz Willek <willek|a_t|gmx_de> # # Version: 0.1 set -e # 3 special Keys upper left corner # 1st Button e032 (178) # 2nd Button e06c (236) # 3rd Button e06f (239) setkeycodes e06f 112 # WLAN-switch setkeycodes e040 113 # Fn+F1, Fn+F2 etc. ... # F1 (Help) setkeycodes e02b 114 #F2 (Suspend) ACPI event "button/sleep SLPB 00000080 00000001 #F3 no event #F4 and F5 (brightness display) seems to work in Hardware setkeycodes e06e 115 #F6 (touchpad on/off) seems to work in Hardware setkeycodes e071 116 setkeycodes e072 117 #F7 (audio mute) 0x20 #F8 (audio silent) 0x2e #F9 (audio louder) 0x30 #F10 setkeycodes e031 118 #F11 (infrared on/off) setkeycodes e05a 119 setkeycodes e059 120 #F12 (bluetooth on/off) setkeycodes e040 121 #<ESC> setkeycodes e033 122 }}}
Das Skript nach /etc/init.d/setkeycodes kopieren, ausführbar machen und bei jedem Systemstart ausführen. Nochmal: Meine Arbeit mit den Tastencodes ist noch nicht fertig, das geht alles noch viel schöner. Ich hoffe, dafür bald Zeit zu finden.
Konsole
Die Fonts umstellen, auf etwas schöneres:
vim /etc/console-tools/config , ganz unten ändern auf: #SCREEN_FONT=lat0-sun16 #SCREEN_FONT_vc2=lat0-sun16 #SCREEN_FONT_vc3=lat0-sun16 #SCREEN_FONT_vc4=lat0-sun16 #SCREEN_FONT_vc5=lat0-sun16 #SCREEN_FONT_vc6=lat0-sun16 SCREEN_FONT=Lat15-Terminus16 SCREEN_FONT_vc2=Lat15-Terminus16 SCREEN_FONT_vc3=Lat15-Terminus16 SCREEN_FONT_vc4=Lat15-Terminus16 SCREEN_FONT_vc5=Lat15-Terminus16 SCREEN_FONT_vc6=Lat15-Terminus16
Für eine Framebufferkonsole mit 1280x800 ist folgendes als bootparameter ganz hübsch:
vga=0x360 video=vesafb:mtrr,1280x800-16@60
Kartenleser
geht nicht mit Debian-Kernel, aber mit eigenen Kernel geht es super. http://ubuntuforums.org/showthread.php?t=200360&page=3
dmesg: tifm_7xx1: sd card detected in socket 1 tifm_7xx1: demand removing card from socket 1
einfach noch das Modul modprobe tifm_sd nehmen
Nachtrag: Das hotplug funktioniert nicht. Schnelle Abhilfe: einfach das Modul tifm_sd beim starten laden:
cat /etc/modules ... # mmc-card tifm_sd
Schöner ist aber ein automatisches Laden über udev, dazu folgende Zeilen in /etc/udev/hotplug.rules einfügen und das Modul aus /etc/modules rausnehmen:
SUBSYSTEM=="pcmcia_socket", RUN+="/sbin/modprobe pcmcia" # rules for subsystems which lack proper hotplug support SUBSYSTEM=="i2o", RUN+="/sbin/modprobe i2o_block" SUBSYSTEM=="mmc", RUN+="/sbin/modprobe mmc_block" #-----<<<<<<EINFÜGEN>>>>>------# # Patch: Load tifm_sd and tifm_ms when tifm subsystem is found SUBSYSTEM=="tifm", ENV{TIFM_CARD_TYPE}=="SD", RUN+="/sbin/modprobe tifm_sd" SUBSYSTEM=="tifm", ENV{TIFM_CARD_TYPE}=="MS", RUN+="/sbin/modprobe tifm_ms" #-----//////EINFÜGEN/////------# SUBSYSTEM=="scsi_device", ATTRS{type}=="0|7|14", RUN+="/sbin/modprobe sd_mod" SUBSYSTEM=="scsi_device", ATTRS{type}=="1", RUN+="/sbin/modprobe osst", \ ATTRS{vendor}=="Onstream", ATTRS{model}!="ADR*"
bluetooth
Update 20090526: Bluetooth works fine with a Logitech optical bluetooth mouse
scheint zu funktionieren, jedoch nicht getestet. Module: bluetooth 50084 4 rfcomm,l2cap
Wlan
ein ipw3945, wird recht gut unterstützt, siehe: http://ipw3945.sourceforge.net/ Die Firmware und den Regulator als Debianpaket von debian-multimedia runter laden. Da ist dann auch ein ordentliches Startskript für den Regulator bei.
Prinzipielle Installation: http://ipw3945.sourceforge.net/INSTALL
Kurzfassung: iee8021 runterladen, entpacken, installieren
http://ieee80211.sourceforge.net/
- % tar xzvf ieee80211-1.1.14.tgz % cd ieee80211-1.1.14 % make
# make install <--- You may need to be root % cd ..
- % tar xzvf ieee80211-1.1.14.tgz % cd ieee80211-1.1.14 % make
Firmware und regulator runterladen:
Die Firmware nach /lib/firmware
Fernbedienung, Infrarot
Die Fernbedienung funktioniert, Sie liefert Tastencodes, die sich auswerten lassen. Es scheinen alle Tasten zu funktionieren. Die Infrarot-Schnittstelle dieses Rechners scheint keine FIR- oder SIR, sondern scheint CIR zu sein. Das bedeutet: sie funktioniert, ist aber zu nichts zu gebrauchen. Technisch gesehen ähnelt diese Infrarotschnittstelle mehr dem Empfänger für die Fernbedienung eines Fernsehers. Es ist beispielsweise kein Abgleich mit einem Handy möglich.
Frage: Ich würde gerne den verbauten IR-Empfänger als Empfänger für eine Universalfernbedienung (Modell URC20-D8G) nutzen. Wäre das möglich? Unter welchem Device ist der Empfänger eingehängt, bzw. wird er unter 2.6.22 überhaupt automatisch vom Kernel erkannt und eingerichtet? Danke im Voraus!
Lautstärke des Rechners
Ich bin wirklich sehr empfindlich, wenn es um die Lautstärke eines Rechners geht. Manchmal ist mir der Tastenanschlag(!) einer Tastatur zu laut. So viel nur vorweg, um mein subjektives Empfinden einschätzen zu können. Ich empfinde diesen Rechner gesamt gesehen eher leise.
Der Lüfter ist in 98 % der Benutzung aus, bei hoher load ist er erträglich laut. Nur wenn der Lüfterausgang versperrt wird und der Rechner künstlich auf 100% Leistung getrieben wird ist das Lüftergeräusch wirklich störend, was aber unter normalen Umständen nie vorkommt. Der Rechner erwärmt sich bei normaler Benutzung an beiden Handballenauflagen auf etwa 35 °C.
Das eingebaute CD/DVD- Laufwerk ist normal laut, eben Standard. Wenn es benutzt wird ist es deutlich zu hören. Wenn das Laufwerk beim Abspielen einer DVD etwas gebremst wird (hdparm) ist es ok.
Das lauteste am Rechner ist die serienmäßig verbaute Festplatte. Sie ist ständig zu hören, das Geräusch erinnert stark an einen langsam laufenden Lüfter. Obwohl sie nicht wirklich laut ist, ist dieses Geräuch für mich sehr störend. Es kommen 3 Möglichkeiten in Betracht, dieses Geräusch zu vermindern:
- Dämmung der Festplatte
- Einbau einer leiseren Platte
- Einbau eines flash-Speichers, anstatt einer Festplatte
Punkt 2 oder 3 werde ich hier beschreiben, sobald ich das Geld für diese Experimente habe. Zu Punkt 1, der Dämmung der Platte gibt es folgendes zu sagen:
Die eingebaute Platte ist verglichen mit anderen Platten nur etwas über normal laut, jedoch wurde nicht auf akkustische Entkoppelung der Platte mit dem Gehäuse geachtet. Dieser Zustand lässt sich mit etwas technischem Geschick leicht beheben. Die Geräusche der Festplatte lassen sich auf etwa die Hälfte reduzieren, ohne das das Laufwerk im Betrieb wärmer wird.
Die Festplatte befindet sich unter der rechten Handballenauflage. Zum dämmen muss die Festplatte ausgebaut werden. Dazu schalten Sie den Rechner aus und lösen die beiden Schrauben der Festplattenabdeckung. Eine der beiden Schrauben befindet sich unter einem Siegel, das sich jedoch leicht mit einem Messer entfernen lässt. Nach öffenen des Gehäuses lässt sich die Festplatte mit Ihrem Einbaukäfig entfernen, es muss nur noch eine weitere Schraube im inneren des Rechners gelöst werden. Ich habe die gesamte Festplatte mit etwa 1 mm dicker, aufgeschäumter Plastikfolie umwickelt und diese mit etwas Klebestreifen fixiert.
Danach habe ich jeweils unten und oben ein ca. 3x5 cm großes Loch in die Folie geschnitten, um die Kühlung der Platte zu gewährleisten. Achtung: Die Festplatte darf beim schneiden der Löcher nicht beschädigt werden!
Dann wird die Platte wieder eingebaut, die Folie befindet sich dann fast nur noch an den Seiten der Platte. Die Platte hat damit keinen direkten Kontakt mehr mit dem Gehäuse.