Comment 7 for bug 199682

Revision history for this message
Lex Ross (lross) wrote : [Hardy] Asus F5N laptop Special keys not working with asus-laptop kernel module

Ok, so the problem persist with current Hardy and acpi version 0.09-3ubuntu1.
Further investigation revealed the following.
1. Kernel module asus-laptop recognizes F5N model correctly (from dmesg output: asus-laptop: F5N model detected)
3. All special keys generate correct ACPI events (from cat /proc/acpi/event output)
2. /sys/class/leds directory is empy, making it impossible to control LEDs (all are LEDs are constantly on)
3. acpid works but acpi_fakekey now fails to generate keycodes with certain numbers. For instance, acpi_fakekey $KEY_WWW (defined in /usr/share/acpi-support/key-constants file) does not generate any key code with asus-laptop kernel module loaded (but will do it just fine with asus-acpi kernel module). It is a mystery to me because acpi-fakekey should be an independent program. And it is totally unclear what key code acpi_fakekey will generate from its argument.

Suggestions:

1. Replace acpi_fakekey with a program (lets call it fakekey) that simply generates key press / key release events with the key code given as its argument.
2. Use asus_acpid daemon to handle application keys, since GNOME does not have the capability to launch arbitrary application anyways (while it should allow to chose "Custom" to associate with a key in its System->Settings->Keyboard shortcuts dialogue).

In case of using asus_acpi daemon, there may be a need to install correct key map based on laptop model detected. I am attaching the one for Asus F5N model. It enables application keys as follows:

Media button - can be configured with GNOME keyboard shortcuts (it's just that acpi-fakekey generates wrong keycode for this one)
Asus4Power - gnome-terminal
Internet - default web browser
Asus Life Frame - either cheese or camorama (should be put in package dependencies so that webcam application gets installed on a laptop that has web camera built-in)
Asus Splendid Utility - nVidia profiles (requires nvidia-glx-new package to be installed)
Asus Power4Phone - Ekiga

Other keys are working out of the box with regular acpid daemon and therefore need not to be configured.
Attached is the set of configuration files that work fine with asus_acpid v0.41 available from http://acpi4asus.sourceforge.net/
Some settings like running asus_acpid at session startup can be installed system wide to automatically apply to all users.

Now the most critical issue here is the empty /sys/class/leds directory, something I cannot fix myself. Any ideas what is wrong there?