[SOLVED] fn-Keys (fn-F10 thru fn-F12) on notebook stop working after kernel upgrade
Linux - KernelThis forum is for all discussion relating to the Linux kernel.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
fn-Keys (fn-F10 thru fn-F12) on notebook stop working after kernel upgrade
Hi, I recently upgraded my Fedora 12 kernel to find my fn keys from fn-F10 thru to Fn-F12 no longer work. These keys control the following:
fn-F10 (Webcam)
fn-F11 (Wireless radio)
fn-F12 (Bluetooth)
My problem is I cannot activate the bluetooth device, and this notebook (Clevo W765T) does not have any hardware or bios options to force the bluetooth on.
Fortunately the camera and wireless radio are on by default, so that is not a major issue, but it would be nice if these would work also.
The kernel that worked was Fedora 2.6.31.5-127.fc12.i686.PAE
while all the kernels since then have broken the keyboard fn-Key.
The output from lsusb when using the 2.6.31.5-127.fc12.i686.PAE kernel is:
# lsusb
Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 003: ID 5986:0241 Acer, Inc
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 002: ID 062a:0000 Creative Labs Optical mouse
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 002: ID 147e:2016 Upek Biometric Touchchip/Touchstrip Fingerprint Sensor
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 003: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 002: ID 1410:2420 Novatel Wireless
The information from dmesg for the same kernel is:
# dmesg
usb 7-2: new full speed USB device using uhci_hcd and address 3
usb 7-2: New USB device found, idVendor=0a12, idProduct=0001
usb 7-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0
usb 7-2: configuration #1 chosen from 1 choice
Bluetooth: Core ver 2.15
NET: Registered protocol family 31
Bluetooth: HCI device and connection manager initialized
Bluetooth: HCI socket layer initialized
Bluetooth: Generic Bluetooth USB driver ver 0.6
usbcore: registered new interface driver btusb
Bluetooth: L2CAP ver 2.13
Bluetooth: L2CAP socket layer initialized
Bluetooth: BNEP (Ethernet Emulation) ver 1.3
Bluetooth: BNEP filters: protocol multicast
Bridge firewalling registered
Bluetooth: SCO (Voice Link) ver 0.6
Bluetooth: SCO socket layer initialized
Bluetooth: RFCOMM TTY layer initialized
Bluetooth: RFCOMM socket layer initialized
Bluetooth: RFCOMM ver 1.11
I thought the following information might also help?
/var/log/messages (output when enabling the bluetooth adapter)
Mar 17 10:15:11 localhost kernel: usb 7-2: new full speed USB device using uhci_hcd and address 8
Mar 17 10:15:11 localhost kernel: usb 7-2: New USB device found, idVendor=0a12, idProduct=0001
Mar 17 10:15:11 localhost kernel: usb 7-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0
Mar 17 10:15:11 localhost kernel: usb 7-2: configuration #1 chosen from 1 choice
Mar 17 10:15:11 localhost bluetoothd[3885]: Bluetooth daemon 4.58
Mar 17 10:15:11 localhost bluetoothd[3886]: Starting SDP server
Mar 17 10:15:11 localhost bluetoothd[3886]: Parsing /etc/bluetooth/network.conf failed: No such file or directory
Mar 17 10:15:11 localhost bluetoothd[3886]: bridge pan0 created
Mar 17 10:15:11 localhost bluetoothd[3886]: Parsing /etc/bluetooth/input.conf failed: No such file or directory
Mar 17 10:15:11 localhost bluetoothd[3886]: Parsing /etc/bluetooth/audio.conf failed: No such file or directory
Mar 17 10:15:11 localhost bluetoothd[3886]: HCI dev 0 registered
Mar 17 10:15:11 localhost NetworkManager: <WARN> device_creator(): /sys/devices/virtual/net/pan0: couldn't determine device driver; ignoring...
Mar 17 10:15:11 localhost bluetoothd[3886]: HCI dev 0 up
Mar 17 10:15:11 localhost bluetoothd[3886]: Starting security manager 0
Mar 17 10:15:11 localhost bluetoothd[3886]: probe failed with driver input-headset for device /org/bluez/3885/hci0/dev_00_22_A5_32_90_A2
Mar 17 10:15:11 localhost bluetoothd[3886]: Adapter /org/bluez/3885/hci0 has been enabled
/var/log/messages (output when disabling the bluetooth adapter)
Mar 17 10:17:40 localhost kernel: usb 7-2: USB disconnect, address 8
Mar 17 10:17:40 localhost kernel: btusb_intr_complete: hci0 urb f09c9300 failed to resubmit (19)
Mar 17 10:17:40 localhost kernel: btusb_bulk_complete: hci0 urb f09c9700 failed to resubmit (19)
Mar 17 10:17:40 localhost kernel: btusb_bulk_complete: hci0 urb f09c9f00 failed to resubmit (19)
Mar 17 10:17:40 localhost kernel: btusb_send_frame: hci0 urb f00a0700 submission failed
Mar 17 10:17:40 localhost bluetoothd[3886]: HCI dev 0 down
Mar 17 10:17:40 localhost bluetoothd[3886]: Adapter /org/bluez/3885/hci0 has been disabled
Mar 17 10:17:40 localhost bluetoothd[3886]: Stopping security manager 0
Mar 17 10:17:41 localhost bluetoothd[3886]: HCI dev 0 unregistered
Mar 17 10:17:41 localhost bluetoothd[3886]: Unregister path: /org/bluez/3885/hci0
Mar 17 10:17:41 localhost NetworkManager: bluez_manager_bdaddr_removed_cb: BT device 00:22:A5:32:90:A2 removed
Mar 17 10:17:41 localhost dbus-daemon: Rejected send message, 2 matched rules; type="error", sender=":1.41" (uid=500 pid=2034 comm="bluetooth-applet) interface="(unset)" member="(unset)" error name="org.freedesktop.DBus.Error.UnknownMethod" requested_reply=0 destination=":1.78" (uid=0 pid=3885 comm="/usr/sbin/bluetoothd))
Mar 17 10:18:11 localhost bluetoothd[3886]: bridge pan0 removed
Mar 17 10:18:11 localhost bluetoothd[3886]: Stopping SDP server
Mar 17 10:18:11 localhost bluetoothd[3886]: Exit
I have tried many possible solutions to resolve this, and all have failed. I have tried to use xev and various other keyboard mapping tools such as xkeycaps to try and remap the keyboard, but can't get this to work.
Any help is welcome...
Last edited by JokeDude; 03-17-2010 at 03:21 AM.
Reason: Added more information to assist diagnosis
bumping this thread, i have the exact same problem with fn-f10, fn-f11, and fn-f12 on a (Clevo D900F based) Sager 9280
appreciation to who (helps) pin(s) this down. I'm about to return the notebook because of this.
Also of note,
debian squeeze/sid here, linux-image-2.6.32-trunk-amd64
Fn-F1[012] keys don't work
ubuntu karmic, stock kernel
Fn-F1[012] keys DO work.
maybe it's a kernel option? i can't find a package that seems to care about bios/usb toggle hotkeys.
not hotkeys, not hotkey-setup, nothing.
what am I (are we) missing??
thanks in advance,
-m
In desperation I copied the same kernel configuration for the kernel that works, and rebuilt the kernel using the latest source etc and the configuration from the kernel that works. This did not help, so it looks like something in the kernel source changed, not one of the configuration options.
Perhaps this needs to be posted on the Kernel list?
well, before bothering the already wildly popular LKML, it's best if we nail down exactly what the problem is, so it isn't presented as "we don't know what it is, please fix it", since they won't necessarily know (or care) what it is either.
On the other hand, if we can nail down exactly what the problem is, and (assuming it's really a kernel problem) we hit LKML with "This is the specific problem, please fix it", then it stands a far better chance of being fixed.
i'm no further to finding a solution myself. I'm yet to compile the kernel again in search for the answer, but when i do, i'll post my results, if they differ.
Another thing to try (which I can't atm) is diffing the working kernel you have (probably a /boot/config-2.6.something.gz file) with the kernel you built using the old kernel's config (probably available in /proc/config.gz, or something) and just making sure indeed all options match.
If all the options -do- match, perhaps it's a) not a kernel difference, but a kernel-related userland difference (difference in initrd maybe?), or b) a module that isn't loading which should?
If you can inspect the contents of the old (working) kernel's initrd and the new (non-working) one's initrd, maybe there's a difference in there somewhere too?
also try comparing sysctl settings. Is it possible that identical kernel configs are fine, but the -settings- of some config somewhere in the kernels runtime is different and thus disabling it?
i'm beginning to agree with you that this is some kernel regression problem.
I noticed you are/were using fedora, having problems between an older and a newer kernel..
I've seen the exact same problem on a newer version under debian (2.6.32-trunk-amd32), and the problem goes away on the stock debian 5 (lenny) kernel 2.6.26-2-amd64..
the same is true on ubuntu.. since the commonality is the kernel between all three distros, it appears it is indeed related.
one hint i've got is "rfkill" might have something to do with it. rfkill is a module used for killswitching wifi. I don't know about bluetooth and whatever else, but i wonder if that module might be related to the problem.
I tried (for a 2nd time) to re-compile the kernel, double checking that the .config files from the working kernel where identical to the version I was about to compile. This still did not help.
As far as the rfkill option goes, I have tried to poke around with that, but all I get is the ability switch the wifi radio off/on. The bluetooth module is not affected by the same function, as it is not integrated into the wifi radio, but is a separate piece of hardware (factory option). The other strange thing that I have noticed, with both the working and non-working kernels, is that xev doesn't detect the fn-F10 thru fn-F12 keypress...
I've narrowed down that the difference is between 2.6.31 and 2.6.32.
I haven't narrowed down -what- it is, but ubuntu karmic koala ships with 2.6.31 and the fn-keys work, and 2.6.32 is the latest available in debian, and it doesn't work there..
so when i get another chance, i'll check the changelog between the two versions and see if there's a clue maybe.
I concur, Fedora 12 also ships with the 2.6.31 kernel, and as soon as I ran the upgrade to 2.6.32 kernel, things went wrong.
I'll also see what I can dig up re the changelog.
but even if i'd found the fix for this, there's still the lack of bios upgrade for my dual-headed problem
i notice there's a lot of happy sager/clevo users on the ubuntu forums, using 2.6.31.. when they get their shiny new upgrades to 10.04, i'm sure they'll come across this thread, since they'll undoubtedly come across this issue.
problem persists in 2.6.33 as well. I'm still not closer to an answer. according to (debian package named) esekeyd's "/usr/bin/keytest", the only keys to register are the volume fn keys, though GNOME seems to see the brightness fn keys too. fn-f10 thru fn-f12 still useless.
I have since discovered that the Kernel regression goes back into the 2.6.31.12-174.2.22-fc12 version on Fedora 12. I am trying to see if I can find a the kernel for Fedora after 2.6.31.5-127.fc12 (which works), and slowly work my way through the various versions until I find the one that breaks the fn10 to fn12 keys.
ok, debian doesn't have a .31 in their repos, so i've grabbed 2.6.31.12 from kernel.org instead.. they'll have the intermediate versions too. if i have the probelm in 2.6.31.12 stock, i'll work my way backwards..
I noticed your post while Googling and was wondering what I could do to help? This problem is affecting my NP9850/M980nu. I would love to have the bluetoothey goodness, but the Fn+F12 key is not operational. I am using 10.04.
On my Windows partition, it's identified as being on:
Port_#0005.Hub_#0001
So, it seems to me that this button "plugs in" the device. Is there a way to activate it via software?
I'm not geek enough to know full well what to do, but I am geek enough to work at it if people give me the directions.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.