I am running openSUSE 12.3 (I know, I know....) with kernel version 3.10.6-22. In the past all the function keys worked, and I am not 100% sure when they stopped working. I am on a System76 Gazelle Professional--gazp8.
When I run XEV from the terminal, the keys for turning on the camera, wireless and Bluetooth seem to be inactive, i.e. there is no indication the X servers is receiving anything from the keyboard. The other FN keys work fine, and I see output from XEV. There is an exception, though; the screen brightness keys work, but the "increase" brightness key (FN+F9) does not send any codes if the brightness is maximized, and the decrease brightness key (FN+F8) does not send any codes when the brightness is minimized. So the driver is aware of the state of the device it attempts to control and does not send unnecessary key codes.
I am guessing this is a keyboard driver issue, but I am not sure how to proceed. It is possible I need a new kernel driver, but I am not sure.
BTW, no key codes with "showkey" even with X stopped.