Add support for uinput device creation
authorPeter Hutterer <peter.hutterer@who-t.net>
Thu, 25 Jul 2013 05:56:11 +0000 (15:56 +1000)
committerPeter Hutterer <peter.hutterer@who-t.net>
Thu, 29 Aug 2013 03:54:46 +0000 (13:54 +1000)
commit1acbfb35799485326f5d76280282f320828aec38
treefb7de085ba8996a043e5f801fb50bae073dccebe
parent1b7c46b2f16f22bb87e76e55c28a717f5f8f248f
Add support for uinput device creation

This lets libevdev provide a relatively generic interface for the
creation of uinput devices so we don't need to duplicate this across
multiple projects.

Most of this is lifted from the current test implementation, with a
couple of minor changes.

EV_REP needs special handling:
   Kernel allows to set the EV_REP bit, it doesn't set REP_* bits (which we
   wrap anyway) but it will also set the default values (500, 33).

Device node is guessed based on the sysfs path:
   The sysfs path contains a eventN file, that corresponds to our
   /dev/input/eventN number. Use it so clients can quickly get the device
   node, without a libudev dependency.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
doc/libevdev.doxygen.in
libevdev/Makefile.am
libevdev/libevdev-uinput-int.h [new file with mode: 0644]
libevdev/libevdev-uinput.c [new file with mode: 0644]
libevdev/libevdev-uinput.h [new file with mode: 0644]
test/Makefile.am