| Overview | |||
|---|---|---|---|
| Device | Status | Driver/Module | Note |
| Pentium M 1600MHz | Ok | speedstep_centrino | Speedstep works out of the box, Temperature readings are strange |
| GeForce 6600GT | Ok | nvidia | Requires binary drivers from NVIDIA for 3D Support (and propably for TV-Out + TwinView). Twinview works. |
| LCD | Ok | - | Resolution for my SXGA+ Display (1400x1050) was detected correctly. Enabling brightness-adjustment may take some work |
| Light Sensor | Ok | asus_acpi (patched) | Requires some work |
| TV-Out | Not tested | - | IF it works, it propably requires the nvidia-driver |
| WLAN | Ok | ipw2200 | To get WPA, driver has to be updated to a more recent version. |
| Ethernet | Ok | sk98lin or skge | Both drivers work for me |
| Modem | Not tested | - | Propably doesn't work |
| Sound | Ok | snd-hda-intel | Requires alsa-drivers >=1.09. Mic (intern/extern) is untested, but according to Josh, they work. |
| Batterie-Indication | Ok | acpi, battery, asus_acpi | - |
| Suspend-to-ram | usable | acpi, asus_acpi | Works only if X is running. |
| Suspend-to-disk | usable | acpi, asus_acpi | Takes a little work (only tested with binary nvidia-driver). Works only if X is running. |
| Touchpad | Ok | evdev, psmouse? | To make it switchable, extra work is needed |
| MMC-/SD-Card Reader | Not tested | - | SD Cards don't work in Linux at all, MMC Cards might work |
| PCMCIA | Propably works | yenta_socket | I didn't have the chance to test it, but according to Josh's article, it works. See the link above for instructions. |
| Firewire | Not tested | - | Should work |
| CD/DVD Writer | Ok | - | This devices propably varies depending on model. Mine (Toshiba) worked fine out of the box. (Including burning) |
| Fn Keys | Ok | acpi, asus_acpi | Requires a lot of work |
cat /proc/acpi/thermal_zone/THRM/temperature is absolutely correct.sudo apt-get install nvidia-glxemerge nvidia-kernel nvidia-glx=media-video/nvidia-glx-1.0.7174-r5 ~x86
=media-video/nvidia-kernel-1.0.7174 ~x86Option "NoLogo" "1" to the same section to get rid of the nvidia-logo that would otherwise pop up everytime you start X.Option "NvAGP" "0" or Option "NvAGP" "1", because the other options (including the default-value) will load the agpgart-module which isn't only useless with a PCI Express card, it will also prevent Suspend-to-Disk (and maybe Suspend-to-Ram) from working.Load "dri"-line. Since this dri-driver doesn't support the nvidia-driver, it can't do any good.Load "ddc" to the "Module"-Section of your /etc/X11/xorg.conf. This will propably also work with WXGA/WSXGA+-Displays.
The asus_acpi-Module of recent kernels (2.6.12 and 2.6.13 at least) support changing the display brightness through the file /proc/acpi/asus/brn. Just echo a value between 0 and 15 to it to set the brightness (0 is darkest, 15 is brightest).
To get the Light Sensor working, you have to update and patch the kernel, which is a bit complicated, so I will only outline the steps needed. If you don't know how to recompile your kernel, I really advice against doing this.
1. download and install a recent kernel that is supported by the patches (currently those are 2.6.12, 2.6.14 and 2.6.16. Please check out Josh's site for the newest info on this patch). Depending on your distribution, you might want to get a patched kernel for your distribution, but you might then run into problems applying the patch.make oldconfig (this will ask you a few questions, default values are usually fine)make modules_install, copy the kernel to /boot, adjust "/boot/grub/menu.lst" or "/boot/grub/grub.conf" so it can boot the new kernelecho "options ipw2200 led=1" > /etc/modprobe.d/ipw2200"options ipw2200 led=1 if it doesn't exist)./configure --with-oss=yes --with-cards=hda-intel
make
make install./configure
make
make installpcm.dmixer {
type dmix
ipc_key 1025
ipc_perm 660
slave {
pcm "hw:0"
}
}
pcm.!default {
type plug
slave.pcm "dmixer"
}modprobe -r ipw2200
/etc/init.d/mysql stop
echo mem > /sys/power/state
/etc/init.d/mysql start
modprobe ipw2200/etc/acpi/sleep.shhibernate-ramOption "NvAGP" "0" or Option "NvAGP" "1" to "/etc/X11/xorg.conf" in the Device-Section for your video card (the two are basically equivalent because the video card is a PCI-Express Device so it doesn't support AGP anyway, but using a different agp-driver might cause problems)
For Gentoo, the same applies as with Suspend-to-ram (see above), except that the config-file for suspend-to-disk is called "/etc/hibernate/hibernate.conf" and the script you run is called hibernateLoad "synaptics" to the Section "Module" and Option "SHMConfig" "1" to the Section "InputDevice" with Identifier "Synaptics Touchpad". There are further options that can be added to this section to customize the Touchpad. (for a list of parameters, check out /usr/share/doc/xorg-driver-synaptics/README.gz) With SHMConfig enabled, you can set the same options with synclient. To disable the touchpad, use synclient TouchpadOff=1.acpi_listen and see the textual description of the event produced.
Now, to bind an action to a key, create a file in /etc/acpi/events with the following content: event=(expression)
action=(action)hotkey.*5d[[:space:]].* matches the event for the wifi-key.| Key | Event | Command |
|---|---|---|
| Sleep | button[ /]sleep | /etc/acpi/sleep.sh |
| WiFi (there are 2 of these, producing the same event) | hotkey.*5d[[:space:]].* | /etc/acpi/wireless.sh |
| Light Sensor | hotkey.*7a[[:space:]].* | echo $((`cat /proc/acpi/asus/lssw` ^ 1)) > /proc/acpi/asus/lssw |
| Brightness- | hotkey.*26[[:space:]].* | echo $((`cat /proc/acpi/asus/brn`-1)) > /proc/acpi/asus/brn |
| Brightness+ | hotkey.*17[[:space:]].* | echo $((`cat /proc/acpi/asus/brn`+1)) > /proc/acpi/asus/brn |
| LCD | hotkey.*34[[:space:]].* | This button does produce a hotkey-event, but it is also hard-wired to turn the LCD very dark |
| Display | hotkey.*61[[:space:]].* | Nothing yet |
| Mute | hotkey.*32[[:space:]].* | /etc/acpi/mute.sh |
| Volume- | hotkey.*31[[:space:]].* | /etc/acpi/vold.sh |
| Volume+ | hotkey.*30[[:space:]].* | /etc/acpi/volu.sh |
| Pause/Play | hotkey.*45[[:space:]].* | /etc/acpi/play.sh |
| Stop | hotkey.*43[[:space:]].* | /usr/bin/mpc stop |
| Next | hotkey.*41[[:space:]].* | /usr/bin/mpc next |
| Previous | hotkey.*40[[:space:]].* | /usr/bin/mpc prev |
| hotkey.*50[[:space:]].* | /usr/bin/mozilla-thunderbird | |
| Net | hotkey.*51[[:space:]].* | /usr/bin/mozilla-firefox |
| Touchpad | hotkey.*6b[[:space:]].* | /etc/acpi/touchpad.sh |
| Power4 | hotkey.*5c[[:space:]].* | Nothing yet |
| Lid | button[ /]lid | /etc/acpi/sleep.sh |
event=.*
action=/etc/acpi/default.sh %e/usr/bin/amixer set Front toggle
/usr/bin/amixer set Headphone toggle/usr/bin/amixer set Front 1-
/usr/bin/amixer set Headphone 1-/usr/bin/amixer set Front 1+
/usr/bin/amixer set Headphone 1+if [ `mpc |grep playing -c` = 1 ]; then
mpc pause
else
mpc play
fiecho "1" > /proc/acpi/asus/mled and off with echo "0" > /proc/acpi/asus/mled
You'll have to figure out yourself, how to teach your mail-client to use it. For Mozilla Thunderbird, you can install the "moztraybiff"-Extension which has feature to do just that.