OK.  I've found the place in the kernel where the fake raw codes are
generated.  It is in linux-2.6/drivers/char/keyboard.c.

W/o changing that table, there is no way to generate the codes that
2.4 generated for the four keys in question.  

OTOH, if I use 164, 166, 165 and 163 in atkbd.c, which are defined
input.h, I get e0/22, e0/24, e0/10, e0/19 which xkb defines as <I22>,
<I24>, <I10> and <I19>.  Those four are used as desired by 33 of the
keyboards defined in xkb/symbols/inet (in 4.3.0).

I'm going to submit that change for atkbd.c.

The XFree86 FAQ probably ought to mention that -model inspiron is not
compatable w/ linux >= 2.5 and to use something like hp5xx instead.

Ideally there should be an entry named something like linux26 covering
all of the keys defined in 2.6's include/linux/input.h.  That way all
of the keys on any hot-plugged kb should work, w/o having to change
one's xkb settings.

Even better of course would be using the event interface instead of
going raw to (linux-input-)keycode to (fake-)raw to (X-)keycode.

Thanks for the help in deducing how this all works.


Devel mailing list

Reply via email to