Note: the problems with wireless networking and suspend to disk can be fixed using a 2.6.21 kenerl, eg. from backports.org. Details will follow.
Debian installation | works smoothly |
DVD reader | works |
Broadcom BCM5788 Gigabit Ethernet | works (recognized during installation) |
Intel 945GM/GMS/940GML Graphics | works (select the i810 driver) |
Synaptics Touchpad | works after reboot (recognized during installation) |
Intel 82801G audio | speaker and microphone work (enable mic capture with alsamixer -V all) |
Intel 3945ABG Wireless | works with minor problems (install ipw3945-modules, ipw3945d and firmware-ipw3945) |
CPU frequency scaling | module speedstep-centrino requires a little tweak |
ACPI A/C and battery control | works if the psmouse module is unloaded before shutdown |
model keys | works if the psmouse module is unloaded before shutdown |
Modem | works, but without dial tone |
battery life | 2:30 h (much less than the advertised 4:48 h) |
Suspend to disk (hibernate) | works, but ACPI and fan control seem broken after wake-up |
Suspend to ram | doesn't work, investigating |
Blotooth | not tested |
Firewire | not tested |
finger print reader | not tried |
I used a recent daily snapshot of the Debian Etch netinst installation CD. I prefered this because it comes with a 2.6.18 kernel. I have read just now (4th March 2007) that key expiry breaks the rc1 installation images, an installation with the rc1 images would probably have given some headache.
To get these things working I had remove the psmouse module before shutting down. To achive that I installed the following script as /etc/init.d/psmouse-unload
#! /bin/sh ### BEGIN INIT INFO # Provides: psmouse-unload # Required-Start: # Required-Stop: # Default-Start: # Default-Stop: 0 6 # Short-Description: unloads psmouse module # Description: ### END INIT INFO # Author: Hendrik Tews <tews@cs.ru.nl> # # Do NOT "set -e" # PATH should only include /usr/* if it runs after the mountnfs.sh script PATH=/sbin:/usr/sbin:/bin:/usr/bin DESC="psmouse module" NAME=psmouse-unload SCRIPTNAME=/etc/init.d/$NAME # Load the VERBOSE setting and other rcS variables . /lib/init/vars.sh # Define LSB log_* functions. # Depend on lsb-base (>= 3.0-6) to ensure that this file is present. . /lib/lsb/init-functions # # Function that starts the daemon/service # # # Function that stops the daemon/service # do_stop() { # Return # 0 if daemon has been stopped # 1 if daemon was already stopped # 2 if daemon could not be stopped # other if a failure occurred logger psmouse-unload script unloads psmouse module modprobe -r psmouse } case "$1" in stop) [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME" do_stop case "$?" in 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; esac ;; *) echo "Usage: $SCRIPTNAME stop" >&2 exit 3 ;; esac :Make this script executable and link it with a K-prefix in /etc/rc0.d and /etc/rc6.d (the shutdown and reboot runlevels):
chmod +x /etc/init.d/psmouse-unload update-rc.d psmouse-unload stop 30 0 6 .
One small problem that I haven't investigated yet: When booting on battery with wireless turned off (via the model key) the boot process stops somewhen after loading the ipw3945 module. The system does not really freeze, however booting will not finish. One can, however, boot on battery with wireless switched on and switch the wireless off once the machine is up.
To start the modem run /usr/sbin/slmodemd --alsa hw:0,6 as root. It will tell you what to use as modem device. Once this is running you can start wvdial with a suitable configuration.