I've tried going through the keyboard fixing process documented with that udev README file (as described here), but I get confused pretty much right off the bat. I'm using that "/lib/udev/keymap" tool to diagnose what's going on, but the output I get is weird and the instructions don't really make clear what it is that I should do.
The problem I'm having on this laptop is that the Fn keys all (or mostly) seem to behave as if the Fn key is pressed. That is, the F6 key for example is also the "Previous Song" key when used with the Fn meta key on the keyboard, or at least that's what it's supposed to be. Well, for me, if I just hit "F6", key is mapped to "previoussong". If I hit my Fn key, let it go, and then press "F6", then it comes through as F6.
For some of the keys, instead of that, a single keypress is reported as two keys: "leftmeta" with a scan code of 0xDB, and then the "Fn" key. So, when I press F1 (which is not labeled as having an Fn alternate meaning), I get what looks like two separate events.
Finally, for the F2 and F3 keys, labeled as being for screen brightness controls, I get no key events whatsoever if I don't precede them with a press and release of the Fn meta key. They do, however, show me the brightness adjustment growler message, though they don't actually seem to have any effect on the display.
What do I need to look at in order to get the keyboard to stop being so weird?
(Again, the laptop is a brand new HP dv6t "quad edition" with a US keyboard, and I'm running 11.04.)
Edit — I've just now started forming a theory that the keyboard might be working as designed, which would be another reason for me to recommend against these things.